@dataengineeringformachinelearning/viking-ui 4.0.2 → 4.0.4
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/README.md +7 -5
- package/dist/README.md +7 -5
- package/dist/deml-components.css +23 -0
- package/dist/fesm2022/dataengineeringformachinelearning-viking-ui.mjs +211 -23
- package/dist/fesm2022/dataengineeringformachinelearning-viking-ui.mjs.map +1 -1
- package/dist/package.json +7 -1
- package/dist/src/web/card/viking-card-wc.ts +2 -1
- package/dist/src/web/core/styles.ts +125 -2
- package/dist/src/web/search-palette/viking-search-palette-wc.ts +1 -0
- package/dist/src/web/suite-header/viking-suite-header-wc.ts +15 -0
- package/dist/types/dataengineeringformachinelearning-viking-ui.d.ts +3 -2
- package/dist/viking-components.css +425 -31
- package/dist/viking-ui-elements.js +180 -42
- package/dist/viking-ui.css +1 -1
- package/dist/web-components.js +143 -3
- package/package.json +7 -1
- package/src/index.ts +1 -1
- package/src/lib/button/button.scss +23 -0
- package/src/lib/card/card.ts +35 -5
- package/src/lib/footer/footer.scss +8 -1
- package/src/lib/site-drakkar/site-footer.ts +5 -1
- package/src/lib/site-drakkar/site-navbar.ts +23 -4
- package/src/lib/theme-toggle/theme-toggle.ts +1 -0
- package/src/styles/_buttons.scss +92 -7
- package/src/styles/_layout-enforcement.scss +66 -3
- package/src/styles/components/footer.scss +26 -13
- package/src/styles/components/icon-inline.scss +23 -0
- package/src/styles/components.scss +276 -9
- package/src/styles/static-navbar.scss +110 -36
- package/src/styles/surfaces/docs-showcase.scss +64 -1
- package/src/styles/surfaces/marketing-landing.scss +247 -6
- package/src/styles/surfaces/swagger-ui.scss +92 -1
- package/src/styles/viking-ui.scss +2 -0
- package/src/web/card/viking-card-wc.ts +2 -1
- package/src/web/core/styles.ts +125 -2
- package/src/web/search-palette/viking-search-palette-wc.ts +1 -0
- package/src/web/suite-header/viking-suite-header-wc.ts +15 -0
|
@@ -787,7 +787,7 @@ const VIKING_BUTTON_STYLES = `
|
|
|
787
787
|
gap: var(--viking-space-1);
|
|
788
788
|
min-height: var(--viking-control-height);
|
|
789
789
|
padding: 0 var(--viking-control-padding-x);
|
|
790
|
-
border-radius: var(--viking-radius);
|
|
790
|
+
border-radius: var(--viking-radius-lg);
|
|
791
791
|
border: 1px solid transparent;
|
|
792
792
|
cursor: pointer;
|
|
793
793
|
text-decoration: none;
|
|
@@ -796,9 +796,29 @@ const VIKING_BUTTON_STYLES = `
|
|
|
796
796
|
min-width: var(--viking-btn-min-width, 120px);
|
|
797
797
|
white-space: nowrap;
|
|
798
798
|
position: relative;
|
|
799
|
+
background-clip: padding-box;
|
|
800
|
+
isolation: isolate;
|
|
799
801
|
user-select: none;
|
|
800
802
|
-webkit-tap-highlight-color: transparent;
|
|
801
803
|
box-sizing: border-box;
|
|
804
|
+
overflow: hidden;
|
|
805
|
+
box-shadow: var(--viking-shadow-sm);
|
|
806
|
+
}
|
|
807
|
+
|
|
808
|
+
.viking-btn::before {
|
|
809
|
+
content: "";
|
|
810
|
+
position: absolute;
|
|
811
|
+
inset: 1px 1px auto;
|
|
812
|
+
height: 1px;
|
|
813
|
+
background: linear-gradient(
|
|
814
|
+
90deg,
|
|
815
|
+
transparent,
|
|
816
|
+
color-mix(in srgb, var(--viking-metallic-100) 45%, transparent),
|
|
817
|
+
transparent
|
|
818
|
+
);
|
|
819
|
+
pointer-events: none;
|
|
820
|
+
opacity: 0.82;
|
|
821
|
+
transition: var(--viking-transition-interactive);
|
|
802
822
|
}
|
|
803
823
|
|
|
804
824
|
.viking-btn:focus-visible {
|
|
@@ -815,6 +835,36 @@ const VIKING_BUTTON_STYLES = `
|
|
|
815
835
|
box-shadow: none !important;
|
|
816
836
|
}
|
|
817
837
|
|
|
838
|
+
.viking-btn[aria-busy='true']::before,
|
|
839
|
+
.viking-btn[aria-busy='true'] .viking-btn-label {
|
|
840
|
+
opacity: 0.85;
|
|
841
|
+
transform: translateY(1px);
|
|
842
|
+
}
|
|
843
|
+
|
|
844
|
+
.viking-btn[aria-busy='true'] .viking-btn-spinner {
|
|
845
|
+
opacity: 0.85;
|
|
846
|
+
}
|
|
847
|
+
|
|
848
|
+
.viking-btn::after {
|
|
849
|
+
content: "";
|
|
850
|
+
position: absolute;
|
|
851
|
+
inset: auto 0 0 0;
|
|
852
|
+
height: 1px;
|
|
853
|
+
background: linear-gradient(
|
|
854
|
+
90deg,
|
|
855
|
+
transparent,
|
|
856
|
+
color-mix(
|
|
857
|
+
in srgb,
|
|
858
|
+
var(--viking-metallic-100) 18%,
|
|
859
|
+
transparent
|
|
860
|
+
),
|
|
861
|
+
transparent
|
|
862
|
+
);
|
|
863
|
+
pointer-events: none;
|
|
864
|
+
opacity: 0.45;
|
|
865
|
+
transition: var(--viking-transition-interactive);
|
|
866
|
+
}
|
|
867
|
+
|
|
818
868
|
.viking-btn-sm {
|
|
819
869
|
min-height: var(--viking-control-height-sm);
|
|
820
870
|
padding: 0 var(--viking-space-2);
|
|
@@ -879,6 +929,20 @@ const VIKING_BUTTON_STYLES = `
|
|
|
879
929
|
height: var(--viking-icon-size-md, 20px);
|
|
880
930
|
}
|
|
881
931
|
|
|
932
|
+
::slotted(viking-icon),
|
|
933
|
+
::slotted(.viking-icon),
|
|
934
|
+
::slotted([data-viking-icon]) {
|
|
935
|
+
display: inline-flex;
|
|
936
|
+
align-items: center;
|
|
937
|
+
justify-content: center;
|
|
938
|
+
width: var(--viking-icon-size-md);
|
|
939
|
+
height: var(--viking-icon-size-md);
|
|
940
|
+
line-height: 1;
|
|
941
|
+
flex-shrink: 0;
|
|
942
|
+
pointer-events: none;
|
|
943
|
+
flex: 0 0 auto;
|
|
944
|
+
}
|
|
945
|
+
|
|
882
946
|
.viking-btn-outline {
|
|
883
947
|
background: var(--viking-surface);
|
|
884
948
|
color: var(--viking-text);
|
|
@@ -893,6 +957,14 @@ const VIKING_BUTTON_STYLES = `
|
|
|
893
957
|
transform: translateY(var(--viking-state-hover-lift));
|
|
894
958
|
}
|
|
895
959
|
|
|
960
|
+
.viking-btn-outline:active:not(:disabled):not([aria-busy='true']) {
|
|
961
|
+
transform: translateY(0) scale(var(--viking-state-active-scale));
|
|
962
|
+
box-shadow: inset 0 1px 2px
|
|
963
|
+
color-mix(in srgb, var(--viking-black) 28%, transparent),
|
|
964
|
+
var(--viking-shadow-sm);
|
|
965
|
+
border-color: var(--viking-border-strong);
|
|
966
|
+
}
|
|
967
|
+
|
|
896
968
|
.viking-btn-primary {
|
|
897
969
|
background: var(--viking-accent);
|
|
898
970
|
color: var(--viking-accent-content);
|
|
@@ -907,6 +979,14 @@ const VIKING_BUTTON_STYLES = `
|
|
|
907
979
|
transform: translateY(var(--viking-state-hover-lift));
|
|
908
980
|
}
|
|
909
981
|
|
|
982
|
+
.viking-btn-primary:active:not(:disabled):not([aria-busy='true']) {
|
|
983
|
+
transform: translateY(0) scale(var(--viking-state-active-scale));
|
|
984
|
+
box-shadow: inset 0 1px 2px
|
|
985
|
+
color-mix(in srgb, var(--viking-black) 28%, transparent),
|
|
986
|
+
var(--viking-shadow-sm);
|
|
987
|
+
border-color: color-mix(in srgb, var(--viking-accent) 82%, var(--viking-black));
|
|
988
|
+
}
|
|
989
|
+
|
|
910
990
|
.viking-btn-secondary {
|
|
911
991
|
background: var(--viking-accent-secondary);
|
|
912
992
|
color: var(--viking-accent-secondary-content);
|
|
@@ -921,6 +1001,14 @@ const VIKING_BUTTON_STYLES = `
|
|
|
921
1001
|
transform: translateY(var(--viking-state-hover-lift));
|
|
922
1002
|
}
|
|
923
1003
|
|
|
1004
|
+
.viking-btn-secondary:active:not(:disabled):not([aria-busy='true']) {
|
|
1005
|
+
transform: translateY(0) scale(var(--viking-state-active-scale));
|
|
1006
|
+
box-shadow: inset 0 1px 2px
|
|
1007
|
+
color-mix(in srgb, var(--viking-black) 28%, transparent),
|
|
1008
|
+
var(--viking-shadow-sm);
|
|
1009
|
+
border-color: color-mix(in srgb, var(--viking-accent-secondary) 82%, var(--viking-black));
|
|
1010
|
+
}
|
|
1011
|
+
|
|
924
1012
|
.viking-btn-filled {
|
|
925
1013
|
background: var(--viking-surface-alt);
|
|
926
1014
|
color: var(--viking-text);
|
|
@@ -935,6 +1023,13 @@ const VIKING_BUTTON_STYLES = `
|
|
|
935
1023
|
transform: translateY(var(--viking-state-hover-lift));
|
|
936
1024
|
}
|
|
937
1025
|
|
|
1026
|
+
.viking-btn-filled:active:not(:disabled):not([aria-busy='true']) {
|
|
1027
|
+
transform: translateY(0) scale(var(--viking-state-active-scale));
|
|
1028
|
+
box-shadow: var(--viking-shadow-sm);
|
|
1029
|
+
border-color: color-mix(in srgb, var(--viking-accent) 20%, var(--viking-border));
|
|
1030
|
+
background: color-mix(in srgb, var(--viking-surface-alt) 84%, var(--viking-accent));
|
|
1031
|
+
}
|
|
1032
|
+
|
|
938
1033
|
.viking-btn-danger {
|
|
939
1034
|
background: var(--viking-danger);
|
|
940
1035
|
color: var(--viking-on-danger);
|
|
@@ -944,10 +1039,20 @@ const VIKING_BUTTON_STYLES = `
|
|
|
944
1039
|
|
|
945
1040
|
.viking-btn-danger:hover:not(:disabled):not([aria-busy='true']) {
|
|
946
1041
|
background: color-mix(in srgb, var(--viking-danger) 88%, var(--viking-white));
|
|
1042
|
+
border-color: color-mix(in srgb, var(--viking-danger) 92%, var(--viking-white));
|
|
947
1043
|
box-shadow: var(--viking-shadow-hover);
|
|
948
1044
|
transform: translateY(var(--viking-state-hover-lift));
|
|
949
1045
|
}
|
|
950
1046
|
|
|
1047
|
+
.viking-btn-danger:active:not(:disabled):not([aria-busy='true']) {
|
|
1048
|
+
transform: translateY(0) scale(var(--viking-state-active-scale));
|
|
1049
|
+
border-color: color-mix(in srgb, var(--viking-danger) 72%, var(--viking-black));
|
|
1050
|
+
background: color-mix(in srgb, var(--viking-danger) 84%, var(--viking-black));
|
|
1051
|
+
box-shadow: inset 0 1px 2px
|
|
1052
|
+
color-mix(in srgb, var(--viking-black) 28%, transparent),
|
|
1053
|
+
var(--viking-shadow-sm);
|
|
1054
|
+
}
|
|
1055
|
+
|
|
951
1056
|
.viking-btn-ghost {
|
|
952
1057
|
background: transparent;
|
|
953
1058
|
color: var(--viking-text);
|
|
@@ -961,6 +1066,12 @@ const VIKING_BUTTON_STYLES = `
|
|
|
961
1066
|
color: var(--viking-accent-strong);
|
|
962
1067
|
}
|
|
963
1068
|
|
|
1069
|
+
.viking-btn-ghost:active:not(:disabled):not([aria-busy='true']) {
|
|
1070
|
+
transform: translateY(0) scale(var(--viking-state-active-scale));
|
|
1071
|
+
background: var(--viking-accent-soft);
|
|
1072
|
+
color: var(--viking-accent-strong);
|
|
1073
|
+
}
|
|
1074
|
+
|
|
964
1075
|
.viking-btn-subtle {
|
|
965
1076
|
background: transparent;
|
|
966
1077
|
color: var(--viking-text-muted);
|
|
@@ -975,6 +1086,13 @@ const VIKING_BUTTON_STYLES = `
|
|
|
975
1086
|
border-color: var(--viking-border-strong);
|
|
976
1087
|
}
|
|
977
1088
|
|
|
1089
|
+
.viking-btn-subtle:active:not(:disabled):not([aria-busy='true']) {
|
|
1090
|
+
transform: translateY(0) scale(var(--viking-state-active-scale));
|
|
1091
|
+
border-color: var(--viking-border);
|
|
1092
|
+
background: color-mix(in srgb, var(--viking-accent-soft) 70%, var(--viking-surface));
|
|
1093
|
+
box-shadow: inset 0 1px 2px color-mix(in srgb, var(--viking-black) 24%, transparent);
|
|
1094
|
+
}
|
|
1095
|
+
|
|
978
1096
|
.viking-btn:active:not(:disabled):not([aria-busy='true']) {
|
|
979
1097
|
transform: translateY(0) scale(var(--viking-state-active-scale));
|
|
980
1098
|
}
|
|
@@ -982,7 +1100,12 @@ const VIKING_BUTTON_STYLES = `
|
|
|
982
1100
|
.viking-btn-label {
|
|
983
1101
|
display: inline-flex;
|
|
984
1102
|
align-items: center;
|
|
985
|
-
|
|
1103
|
+
gap: var(--viking-space-1);
|
|
1104
|
+
line-height: 1.2;
|
|
1105
|
+
min-width: 0;
|
|
1106
|
+
justify-content: center;
|
|
1107
|
+
text-align: center;
|
|
1108
|
+
white-space: nowrap;
|
|
986
1109
|
}
|
|
987
1110
|
|
|
988
1111
|
.viking-btn-spinner {
|
|
@@ -2199,7 +2322,7 @@ class VikingCardWc extends HTMLElementBase {
|
|
|
2199
2322
|
static tag = "viking-card";
|
|
2200
2323
|
static legacyTag = "viking-card-wc";
|
|
2201
2324
|
static get observedAttributes() {
|
|
2202
|
-
return ["compact", "interactive", "title"];
|
|
2325
|
+
return ["compact", "interactive", "title", "loading"];
|
|
2203
2326
|
}
|
|
2204
2327
|
connectedCallback() {
|
|
2205
2328
|
this.syncClasses();
|
|
@@ -2213,6 +2336,7 @@ class VikingCardWc extends HTMLElementBase {
|
|
|
2213
2336
|
this.classList.add("viking-card");
|
|
2214
2337
|
this.classList.toggle("viking-card-compact", this.hasAttribute("compact"));
|
|
2215
2338
|
this.classList.toggle("viking-card-interactive", this.hasAttribute("interactive"));
|
|
2339
|
+
this.classList.toggle("viking-card-loading", this.hasAttribute("loading"));
|
|
2216
2340
|
const title = this.getAttribute("title");
|
|
2217
2341
|
if (title) {
|
|
2218
2342
|
this.setAttribute("role", "region");
|
|
@@ -2767,6 +2891,7 @@ class VikingSearchPaletteWc extends HTMLElementBase {
|
|
|
2767
2891
|
}
|
|
2768
2892
|
connectedCallback() {
|
|
2769
2893
|
this.render();
|
|
2894
|
+
this.removeAttribute("open");
|
|
2770
2895
|
this.syncOpen();
|
|
2771
2896
|
this.bindGlobalShortcut();
|
|
2772
2897
|
this.dialogEl?.addEventListener("close", this.onClose);
|
|
@@ -3952,6 +4077,17 @@ const VIKING_SUITE_HEADER_STYLES = `
|
|
|
3952
4077
|
text-transform: uppercase;
|
|
3953
4078
|
}
|
|
3954
4079
|
|
|
4080
|
+
.suite-header__auth-icon,
|
|
4081
|
+
.suite-header__menu-icon,
|
|
4082
|
+
.suite-header__action-icon,
|
|
4083
|
+
.suite-header__avatar-icon,
|
|
4084
|
+
.suite-header__chevron {
|
|
4085
|
+
display: inline-flex;
|
|
4086
|
+
align-items: center;
|
|
4087
|
+
justify-content: center;
|
|
4088
|
+
flex-shrink: 0;
|
|
4089
|
+
}
|
|
4090
|
+
|
|
3955
4091
|
.suite-header__auth-link:hover {
|
|
3956
4092
|
background: var(--viking-accent-hover);
|
|
3957
4093
|
color: var(--viking-accent-content);
|
|
@@ -4104,6 +4240,10 @@ viking-suite-command-palette {
|
|
|
4104
4240
|
.suite-header__menu-button {
|
|
4105
4241
|
display: none;
|
|
4106
4242
|
}
|
|
4243
|
+
|
|
4244
|
+
.suite-header[data-menu-open='true'] .suite-header__mobile {
|
|
4245
|
+
display: none;
|
|
4246
|
+
}
|
|
4107
4247
|
}
|
|
4108
4248
|
`;
|
|
4109
4249
|
const detectContext = () => {
|
|
@@ -4926,7 +5066,7 @@ class VikingButton {
|
|
|
4926
5066
|
<kbd class="viking-btn-kbd">{{ kbd() }}</kbd>
|
|
4927
5067
|
}
|
|
4928
5068
|
</viking-button-wc>
|
|
4929
|
-
`, isInline: true, styles: [".viking-btn,a.viking-btn,button.viking-btn{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn:focus-visible,a.viking-btn:focus-visible,button.viking-btn:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn:disabled,.viking-btn[aria-busy=true],a.viking-btn:disabled,a.viking-btn[aria-busy=true],button.viking-btn:disabled,button.viking-btn[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn[aria-busy=true] .viking-btn-label,a.viking-btn[aria-busy=true] .viking-btn-label,button.viking-btn[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn viking-icon,.viking-btn .viking-icon,a.viking-btn viking-icon,a.viking-btn .viking-icon,button.viking-btn viking-icon,button.viking-btn .viking-icon{flex-shrink:0;pointer-events:none}.viking-btn-primary,a.viking-btn-primary,button.viking-btn-primary{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn-primary:focus-visible,a.viking-btn-primary:focus-visible,button.viking-btn-primary:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-primary:disabled,.viking-btn-primary[aria-busy=true],a.viking-btn-primary:disabled,a.viking-btn-primary[aria-busy=true],button.viking-btn-primary:disabled,button.viking-btn-primary[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-primary[aria-busy=true] .viking-btn-label,a.viking-btn-primary[aria-busy=true] .viking-btn-label,button.viking-btn-primary[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-primary viking-icon,.viking-btn-primary .viking-icon,a.viking-btn-primary viking-icon,a.viking-btn-primary .viking-icon,button.viking-btn-primary viking-icon,button.viking-btn-primary .viking-icon{flex-shrink:0;pointer-events:none}.viking-btn-primary,a.viking-btn-primary,button.viking-btn-primary{background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);color:var(--viking-accent-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-primary:active:not(:disabled):not([aria-busy=true]),a.viking-btn-primary:active:not(:disabled):not([aria-busy=true]),button.viking-btn-primary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn-secondary,a.viking-btn-secondary,button.viking-btn-secondary{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn-secondary:focus-visible,a.viking-btn-secondary:focus-visible,button.viking-btn-secondary:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-secondary:disabled,.viking-btn-secondary[aria-busy=true],a.viking-btn-secondary:disabled,a.viking-btn-secondary[aria-busy=true],button.viking-btn-secondary:disabled,button.viking-btn-secondary[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-secondary[aria-busy=true] .viking-btn-label,a.viking-btn-secondary[aria-busy=true] .viking-btn-label,button.viking-btn-secondary[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-secondary viking-icon,.viking-btn-secondary .viking-icon,a.viking-btn-secondary viking-icon,a.viking-btn-secondary .viking-icon,button.viking-btn-secondary viking-icon,button.viking-btn-secondary .viking-icon{flex-shrink:0;pointer-events:none}.viking-btn-secondary,a.viking-btn-secondary,button.viking-btn-secondary{background:var(--viking-accent-secondary);color:var(--viking-accent-secondary-content);border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-secondary:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-secondary:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-secondary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-secondary-hover);border-color:var(--viking-accent-secondary-hover);color:var(--viking-accent-secondary-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-secondary:active:not(:disabled):not([aria-busy=true]),a.viking-btn-secondary:active:not(:disabled):not([aria-busy=true]),button.viking-btn-secondary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn-outline,a.viking-btn-outline,button.viking-btn-outline{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn-outline:focus-visible,a.viking-btn-outline:focus-visible,button.viking-btn-outline:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-outline:disabled,.viking-btn-outline[aria-busy=true],a.viking-btn-outline:disabled,a.viking-btn-outline[aria-busy=true],button.viking-btn-outline:disabled,button.viking-btn-outline[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-outline[aria-busy=true] .viking-btn-label,a.viking-btn-outline[aria-busy=true] .viking-btn-label,button.viking-btn-outline[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-outline viking-icon,.viking-btn-outline .viking-icon,a.viking-btn-outline viking-icon,a.viking-btn-outline .viking-icon,button.viking-btn-outline viking-icon,button.viking-btn-outline .viking-icon{flex-shrink:0;pointer-events:none}.viking-btn-outline,a.viking-btn-outline,button.viking-btn-outline{background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border-strong));color:var(--viking-text);box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-outline:active:not(:disabled):not([aria-busy=true]),a.viking-btn-outline:active:not(:disabled):not([aria-busy=true]),button.viking-btn-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn-danger,a.viking-btn-danger,button.viking-btn-danger{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn-danger:focus-visible,a.viking-btn-danger:focus-visible,button.viking-btn-danger:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-danger:disabled,.viking-btn-danger[aria-busy=true],a.viking-btn-danger:disabled,a.viking-btn-danger[aria-busy=true],button.viking-btn-danger:disabled,button.viking-btn-danger[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-danger[aria-busy=true] .viking-btn-label,a.viking-btn-danger[aria-busy=true] .viking-btn-label,button.viking-btn-danger[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-danger viking-icon,.viking-btn-danger .viking-icon,a.viking-btn-danger viking-icon,a.viking-btn-danger .viking-icon,button.viking-btn-danger viking-icon,button.viking-btn-danger .viking-icon{flex-shrink:0;pointer-events:none}.viking-btn-danger,a.viking-btn-danger,button.viking-btn-danger{background:var(--viking-danger);color:var(--viking-on-danger);border-color:color-mix(in srgb,var(--viking-danger) 85%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]){background:color-mix(in srgb,var(--viking-danger) 88%,var(--viking-white));border-color:color-mix(in srgb,var(--viking-danger) 92%,var(--viking-white));color:var(--viking-on-danger);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-danger:active:not(:disabled):not([aria-busy=true]),a.viking-btn-danger:active:not(:disabled):not([aria-busy=true]),button.viking-btn-danger:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn-ghost,a.viking-btn-ghost,button.viking-btn-ghost{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn-ghost:focus-visible,a.viking-btn-ghost:focus-visible,button.viking-btn-ghost:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-ghost:disabled,.viking-btn-ghost[aria-busy=true],a.viking-btn-ghost:disabled,a.viking-btn-ghost[aria-busy=true],button.viking-btn-ghost:disabled,button.viking-btn-ghost[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-ghost[aria-busy=true] .viking-btn-label,a.viking-btn-ghost[aria-busy=true] .viking-btn-label,button.viking-btn-ghost[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-ghost viking-icon,.viking-btn-ghost .viking-icon,a.viking-btn-ghost viking-icon,a.viking-btn-ghost .viking-icon,button.viking-btn-ghost viking-icon,button.viking-btn-ghost .viking-icon{flex-shrink:0;pointer-events:none}.viking-btn-ghost,a.viking-btn-ghost,button.viking-btn-ghost{background:transparent;color:var(--viking-text);min-width:auto;box-shadow:none;border-color:transparent}.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]),a.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]),button.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-btn-subtle,a.viking-btn-subtle,button.viking-btn-subtle{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn-subtle:focus-visible,a.viking-btn-subtle:focus-visible,button.viking-btn-subtle:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-subtle:disabled,.viking-btn-subtle[aria-busy=true],a.viking-btn-subtle:disabled,a.viking-btn-subtle[aria-busy=true],button.viking-btn-subtle:disabled,button.viking-btn-subtle[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-subtle[aria-busy=true] .viking-btn-label,a.viking-btn-subtle[aria-busy=true] .viking-btn-label,button.viking-btn-subtle[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-subtle viking-icon,.viking-btn-subtle .viking-icon,a.viking-btn-subtle viking-icon,a.viking-btn-subtle .viking-icon,button.viking-btn-subtle viking-icon,button.viking-btn-subtle .viking-icon{flex-shrink:0;pointer-events:none}.viking-btn-subtle,a.viking-btn-subtle,button.viking-btn-subtle{background:transparent;color:var(--viking-text-muted);border-color:var(--viking-border-subtle);min-width:auto;box-shadow:none}.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]){color:var(--viking-text);background:var(--viking-accent-soft);border-color:var(--viking-border-strong)}.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]),a.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]),button.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-btn.viking-outline{background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border-strong));color:var(--viking-text);box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-primary{background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-primary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);color:var(--viking-accent-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-primary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-secondary{background:var(--viking-accent-secondary);color:var(--viking-accent-secondary-content);border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-secondary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-secondary-hover);border-color:var(--viking-accent-secondary-hover);color:var(--viking-accent-secondary-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-secondary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-filled{background:var(--viking-surface-alt);color:var(--viking-text);border-color:var(--viking-border);box-shadow:var(--viking-shadow-xs)}.viking-btn.viking-filled:hover:not(:disabled):not([aria-busy=true]){border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border));background:color-mix(in srgb,var(--viking-accent) 8%,var(--viking-surface-alt));box-shadow:var(--viking-shadow-sm);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-filled:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale))}.viking-btn.viking-danger{background:var(--viking-danger);color:var(--viking-on-danger);border-color:color-mix(in srgb,var(--viking-danger) 85%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-danger:hover:not(:disabled):not([aria-busy=true]){background:color-mix(in srgb,var(--viking-danger) 88%,var(--viking-white));border-color:color-mix(in srgb,var(--viking-danger) 92%,var(--viking-white));color:var(--viking-on-danger);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-danger:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-ghost{background:transparent;color:var(--viking-text);min-width:auto;box-shadow:none;border-color:transparent}.viking-btn.viking-ghost:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-btn.viking-ghost:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-btn.viking-subtle{background:transparent;color:var(--viking-text-muted);border-color:var(--viking-border-subtle);min-width:auto;box-shadow:none}.viking-btn.viking-subtle:hover:not(:disabled):not([aria-busy=true]){color:var(--viking-text);background:var(--viking-accent-soft);border-color:var(--viking-border-strong)}.viking-btn.viking-subtle:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-btn.viking-compact{min-width:0}.viking-btn.viking-full{width:100%;min-width:0}:host{display:inline-flex}:host(.viking-full){display:flex}:host(.viking-full) .viking-btn{width:100%;min-width:0}:host(.viking-compact) .viking-btn{min-width:0}.viking-btn{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn:disabled,.viking-btn[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn viking-icon,.viking-btn .viking-icon{flex-shrink:0;pointer-events:none}.viking-sm{min-height:var(--viking-control-height-sm);padding:0 var(--viking-space-2);font-size:var(--viking-font-size-xs);min-width:auto}.viking-xs{min-height:var(--viking-control-height-xs);padding:0 var(--viking-space-1);font-size:var(--viking-font-size-xs);min-width:auto}.viking-square{width:var(--viking-control-height);min-width:var(--viking-control-height);padding:0}.viking-square.viking-sm{width:var(--viking-control-height-sm);min-width:var(--viking-control-height-sm)}.viking-square.viking-xs{width:var(--viking-control-height-xs);min-width:var(--viking-control-height-xs)}.viking-square .viking-btn-label{display:none}.viking-outline{background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.viking-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border-strong));color:var(--viking-text);box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.viking-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-primary{background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-primary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);color:var(--viking-accent-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-primary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-secondary{background:var(--viking-accent-secondary);color:var(--viking-accent-secondary-content);border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-secondary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-secondary-hover);border-color:var(--viking-accent-secondary-hover);color:var(--viking-accent-secondary-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-secondary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-filled{background:var(--viking-surface-alt);color:var(--viking-text);border-color:var(--viking-border);box-shadow:var(--viking-shadow-xs)}.viking-filled:hover:not(:disabled):not([aria-busy=true]){border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border));background:color-mix(in srgb,var(--viking-accent) 8%,var(--viking-surface-alt));box-shadow:var(--viking-shadow-sm);transform:translateY(var(--viking-state-hover-lift))}.viking-filled:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale))}.viking-danger{background:var(--viking-danger);color:var(--viking-on-danger);border-color:color-mix(in srgb,var(--viking-danger) 85%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-danger:hover:not(:disabled):not([aria-busy=true]){background:color-mix(in srgb,var(--viking-danger) 88%,var(--viking-white));border-color:color-mix(in srgb,var(--viking-danger) 92%,var(--viking-white));color:var(--viking-on-danger);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-danger:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-ghost{background:transparent;color:var(--viking-text);min-width:auto;box-shadow:none;border-color:transparent}.viking-ghost:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-ghost:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-subtle{background:transparent;color:var(--viking-text-muted);border-color:var(--viking-border-subtle);min-width:auto;box-shadow:none}.viking-subtle:hover:not(:disabled):not([aria-busy=true]){color:var(--viking-text);background:var(--viking-accent-soft);border-color:var(--viking-border-strong)}.viking-subtle:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-btn-label{display:inline-flex;align-items:center;line-height:inherit}.viking-btn-kbd{font-family:var(--viking-font-family-mono);font-size:var(--viking-font-size-xs);color:var(--viking-text-muted);background:var(--viking-surface-alt);border:1px solid var(--viking-border);border-radius:var(--viking-radius-xs);padding:0 var(--viking-space-half);line-height:1.4;margin-left:var(--viking-space-half);font-weight:var(--viking-font-weight-medium)}\n"], dependencies: [{ kind: "component", type: VikingIcon, selector: "viking-icon", inputs: ["name", "size", "sizePreset", "variant", "color", "backdrop", "backdropTone", "spin"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5069
|
+
`, isInline: true, styles: [".viking-btn,a.viking-btn,button.viking-btn{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn:focus-visible,a.viking-btn:focus-visible,button.viking-btn:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn:before,a.viking-btn:before,button.viking-btn:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn:after,a.viking-btn:after,button.viking-btn:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn:disabled,.viking-btn[aria-busy=true],a.viking-btn:disabled,a.viking-btn[aria-busy=true],button.viking-btn:disabled,button.viking-btn[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn[aria-busy=true]:before,.viking-btn[aria-busy=true] .viking-btn-label,a.viking-btn[aria-busy=true]:before,a.viking-btn[aria-busy=true] .viking-btn-label,button.viking-btn[aria-busy=true]:before,button.viking-btn[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn viking-icon,.viking-btn .viking-icon,.viking-btn [data-viking-icon],a.viking-btn viking-icon,a.viking-btn .viking-icon,a.viking-btn [data-viking-icon],button.viking-btn viking-icon,button.viking-btn .viking-icon,button.viking-btn [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn .viking-btn-label,a.viking-btn .viking-btn-label,button.viking-btn .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn-primary,a.viking-btn-primary,button.viking-btn-primary{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn-primary:focus-visible,a.viking-btn-primary:focus-visible,button.viking-btn-primary:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-primary:before,a.viking-btn-primary:before,button.viking-btn-primary:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn-primary:after,a.viking-btn-primary:after,button.viking-btn-primary:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn-primary:disabled,.viking-btn-primary[aria-busy=true],a.viking-btn-primary:disabled,a.viking-btn-primary[aria-busy=true],button.viking-btn-primary:disabled,button.viking-btn-primary[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-primary[aria-busy=true]:before,.viking-btn-primary[aria-busy=true] .viking-btn-label,a.viking-btn-primary[aria-busy=true]:before,a.viking-btn-primary[aria-busy=true] .viking-btn-label,button.viking-btn-primary[aria-busy=true]:before,button.viking-btn-primary[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn-primary viking-icon,.viking-btn-primary .viking-icon,.viking-btn-primary [data-viking-icon],a.viking-btn-primary viking-icon,a.viking-btn-primary .viking-icon,a.viking-btn-primary [data-viking-icon],button.viking-btn-primary viking-icon,button.viking-btn-primary .viking-icon,button.viking-btn-primary [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn-primary .viking-btn-label,a.viking-btn-primary .viking-btn-label,button.viking-btn-primary .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn-primary,a.viking-btn-primary,button.viking-btn-primary{background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);color:var(--viking-accent-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-primary:active:not(:disabled):not([aria-busy=true]),a.viking-btn-primary:active:not(:disabled):not([aria-busy=true]),button.viking-btn-primary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-btn-secondary,a.viking-btn-secondary,button.viking-btn-secondary{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn-secondary:focus-visible,a.viking-btn-secondary:focus-visible,button.viking-btn-secondary:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-secondary:before,a.viking-btn-secondary:before,button.viking-btn-secondary:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn-secondary:after,a.viking-btn-secondary:after,button.viking-btn-secondary:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn-secondary:disabled,.viking-btn-secondary[aria-busy=true],a.viking-btn-secondary:disabled,a.viking-btn-secondary[aria-busy=true],button.viking-btn-secondary:disabled,button.viking-btn-secondary[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-secondary[aria-busy=true]:before,.viking-btn-secondary[aria-busy=true] .viking-btn-label,a.viking-btn-secondary[aria-busy=true]:before,a.viking-btn-secondary[aria-busy=true] .viking-btn-label,button.viking-btn-secondary[aria-busy=true]:before,button.viking-btn-secondary[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn-secondary viking-icon,.viking-btn-secondary .viking-icon,.viking-btn-secondary [data-viking-icon],a.viking-btn-secondary viking-icon,a.viking-btn-secondary .viking-icon,a.viking-btn-secondary [data-viking-icon],button.viking-btn-secondary viking-icon,button.viking-btn-secondary .viking-icon,button.viking-btn-secondary [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn-secondary .viking-btn-label,a.viking-btn-secondary .viking-btn-label,button.viking-btn-secondary .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn-secondary,a.viking-btn-secondary,button.viking-btn-secondary{background:var(--viking-accent-secondary);color:var(--viking-accent-secondary-content);border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-secondary:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-secondary:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-secondary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-secondary-hover);border-color:var(--viking-accent-secondary-hover);color:var(--viking-accent-secondary-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-secondary:active:not(:disabled):not([aria-busy=true]),a.viking-btn-secondary:active:not(:disabled):not([aria-busy=true]),button.viking-btn-secondary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-btn-outline,a.viking-btn-outline,button.viking-btn-outline{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn-outline:focus-visible,a.viking-btn-outline:focus-visible,button.viking-btn-outline:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-outline:before,a.viking-btn-outline:before,button.viking-btn-outline:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn-outline:after,a.viking-btn-outline:after,button.viking-btn-outline:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn-outline:disabled,.viking-btn-outline[aria-busy=true],a.viking-btn-outline:disabled,a.viking-btn-outline[aria-busy=true],button.viking-btn-outline:disabled,button.viking-btn-outline[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-outline[aria-busy=true]:before,.viking-btn-outline[aria-busy=true] .viking-btn-label,a.viking-btn-outline[aria-busy=true]:before,a.viking-btn-outline[aria-busy=true] .viking-btn-label,button.viking-btn-outline[aria-busy=true]:before,button.viking-btn-outline[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn-outline viking-icon,.viking-btn-outline .viking-icon,.viking-btn-outline [data-viking-icon],a.viking-btn-outline viking-icon,a.viking-btn-outline .viking-icon,a.viking-btn-outline [data-viking-icon],button.viking-btn-outline viking-icon,button.viking-btn-outline .viking-icon,button.viking-btn-outline [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn-outline .viking-btn-label,a.viking-btn-outline .viking-btn-label,button.viking-btn-outline .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn-outline,a.viking-btn-outline,button.viking-btn-outline{background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border-strong));color:var(--viking-text);box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-outline:active:not(:disabled):not([aria-busy=true]),a.viking-btn-outline:active:not(:disabled):not([aria-busy=true]),button.viking-btn-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:var(--viking-border-strong);box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-btn-danger,a.viking-btn-danger,button.viking-btn-danger{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn-danger:focus-visible,a.viking-btn-danger:focus-visible,button.viking-btn-danger:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-danger:before,a.viking-btn-danger:before,button.viking-btn-danger:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn-danger:after,a.viking-btn-danger:after,button.viking-btn-danger:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn-danger:disabled,.viking-btn-danger[aria-busy=true],a.viking-btn-danger:disabled,a.viking-btn-danger[aria-busy=true],button.viking-btn-danger:disabled,button.viking-btn-danger[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-danger[aria-busy=true]:before,.viking-btn-danger[aria-busy=true] .viking-btn-label,a.viking-btn-danger[aria-busy=true]:before,a.viking-btn-danger[aria-busy=true] .viking-btn-label,button.viking-btn-danger[aria-busy=true]:before,button.viking-btn-danger[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn-danger viking-icon,.viking-btn-danger .viking-icon,.viking-btn-danger [data-viking-icon],a.viking-btn-danger viking-icon,a.viking-btn-danger .viking-icon,a.viking-btn-danger [data-viking-icon],button.viking-btn-danger viking-icon,button.viking-btn-danger .viking-icon,button.viking-btn-danger [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn-danger .viking-btn-label,a.viking-btn-danger .viking-btn-label,button.viking-btn-danger .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn-danger,a.viking-btn-danger,button.viking-btn-danger{background:var(--viking-danger);color:var(--viking-on-danger);border-color:color-mix(in srgb,var(--viking-danger) 85%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]){background:color-mix(in srgb,var(--viking-danger) 88%,var(--viking-white));border-color:color-mix(in srgb,var(--viking-danger) 92%,var(--viking-white));color:var(--viking-on-danger);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-danger:active:not(:disabled):not([aria-busy=true]),a.viking-btn-danger:active:not(:disabled):not([aria-busy=true]),button.viking-btn-danger:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-danger) 72%,var(--viking-black));background:color-mix(in srgb,var(--viking-danger) 84%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-ghost,a.viking-btn-ghost,button.viking-btn-ghost{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn-ghost:focus-visible,a.viking-btn-ghost:focus-visible,button.viking-btn-ghost:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-ghost:before,a.viking-btn-ghost:before,button.viking-btn-ghost:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn-ghost:after,a.viking-btn-ghost:after,button.viking-btn-ghost:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn-ghost:disabled,.viking-btn-ghost[aria-busy=true],a.viking-btn-ghost:disabled,a.viking-btn-ghost[aria-busy=true],button.viking-btn-ghost:disabled,button.viking-btn-ghost[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-ghost[aria-busy=true]:before,.viking-btn-ghost[aria-busy=true] .viking-btn-label,a.viking-btn-ghost[aria-busy=true]:before,a.viking-btn-ghost[aria-busy=true] .viking-btn-label,button.viking-btn-ghost[aria-busy=true]:before,button.viking-btn-ghost[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn-ghost viking-icon,.viking-btn-ghost .viking-icon,.viking-btn-ghost [data-viking-icon],a.viking-btn-ghost viking-icon,a.viking-btn-ghost .viking-icon,a.viking-btn-ghost [data-viking-icon],button.viking-btn-ghost viking-icon,button.viking-btn-ghost .viking-icon,button.viking-btn-ghost [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn-ghost .viking-btn-label,a.viking-btn-ghost .viking-btn-label,button.viking-btn-ghost .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn-ghost,a.viking-btn-ghost,button.viking-btn-ghost{background:transparent;color:var(--viking-text);min-width:auto;box-shadow:none;border-color:transparent}.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]),a.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]),button.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-btn-subtle,a.viking-btn-subtle,button.viking-btn-subtle{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn-subtle:focus-visible,a.viking-btn-subtle:focus-visible,button.viking-btn-subtle:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-subtle:before,a.viking-btn-subtle:before,button.viking-btn-subtle:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn-subtle:after,a.viking-btn-subtle:after,button.viking-btn-subtle:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn-subtle:disabled,.viking-btn-subtle[aria-busy=true],a.viking-btn-subtle:disabled,a.viking-btn-subtle[aria-busy=true],button.viking-btn-subtle:disabled,button.viking-btn-subtle[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-subtle[aria-busy=true]:before,.viking-btn-subtle[aria-busy=true] .viking-btn-label,a.viking-btn-subtle[aria-busy=true]:before,a.viking-btn-subtle[aria-busy=true] .viking-btn-label,button.viking-btn-subtle[aria-busy=true]:before,button.viking-btn-subtle[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn-subtle viking-icon,.viking-btn-subtle .viking-icon,.viking-btn-subtle [data-viking-icon],a.viking-btn-subtle viking-icon,a.viking-btn-subtle .viking-icon,a.viking-btn-subtle [data-viking-icon],button.viking-btn-subtle viking-icon,button.viking-btn-subtle .viking-icon,button.viking-btn-subtle [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn-subtle .viking-btn-label,a.viking-btn-subtle .viking-btn-label,button.viking-btn-subtle .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn-subtle,a.viking-btn-subtle,button.viking-btn-subtle{background:transparent;color:var(--viking-text-muted);border-color:var(--viking-border-subtle);min-width:auto;box-shadow:none}.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]){color:var(--viking-text);background:var(--viking-accent-soft);border-color:var(--viking-border-strong)}.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]),a.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]),button.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:var(--viking-border);background:color-mix(in srgb,var(--viking-accent-soft) 70%,var(--viking-surface));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 24%,transparent)}.viking-btn.viking-outline{background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border-strong));color:var(--viking-text);box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:var(--viking-border-strong);box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-btn.viking-primary{background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-primary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);color:var(--viking-accent-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-primary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-btn.viking-secondary{background:var(--viking-accent-secondary);color:var(--viking-accent-secondary-content);border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-secondary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-secondary-hover);border-color:var(--viking-accent-secondary-hover);color:var(--viking-accent-secondary-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-secondary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-btn.viking-filled{background:var(--viking-surface-alt);color:var(--viking-text);border-color:var(--viking-border);box-shadow:var(--viking-shadow-xs)}.viking-btn.viking-filled:hover:not(:disabled):not([aria-busy=true]){border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border));background:color-mix(in srgb,var(--viking-accent) 8%,var(--viking-surface-alt));box-shadow:var(--viking-shadow-sm);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-filled:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm);border-color:color-mix(in srgb,var(--viking-accent) 20%,var(--viking-border));background:color-mix(in srgb,var(--viking-surface-alt) 84%,var(--viking-accent))}.viking-btn.viking-danger{background:var(--viking-danger);color:var(--viking-on-danger);border-color:color-mix(in srgb,var(--viking-danger) 85%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-danger:hover:not(:disabled):not([aria-busy=true]){background:color-mix(in srgb,var(--viking-danger) 88%,var(--viking-white));border-color:color-mix(in srgb,var(--viking-danger) 92%,var(--viking-white));color:var(--viking-on-danger);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-danger:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-danger) 72%,var(--viking-black));background:color-mix(in srgb,var(--viking-danger) 84%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-ghost{background:transparent;color:var(--viking-text);min-width:auto;box-shadow:none;border-color:transparent}.viking-btn.viking-ghost:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-btn.viking-ghost:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-btn.viking-subtle{background:transparent;color:var(--viking-text-muted);border-color:var(--viking-border-subtle);min-width:auto;box-shadow:none}.viking-btn.viking-subtle:hover:not(:disabled):not([aria-busy=true]){color:var(--viking-text);background:var(--viking-accent-soft);border-color:var(--viking-border-strong)}.viking-btn.viking-subtle:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:var(--viking-border);background:color-mix(in srgb,var(--viking-accent-soft) 70%,var(--viking-surface));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 24%,transparent)}.viking-btn.viking-compact{min-width:0}.viking-btn.viking-full{width:100%;min-width:0}.viking-btn-label{display:inline-flex;align-items:center;line-height:inherit}:host{display:inline-flex;align-items:center}:host(.viking-full){display:flex}:host(.viking-full) .viking-btn{width:100%;min-width:0}:host(.viking-compact) .viking-btn{min-width:0}.viking-btn{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn:disabled,.viking-btn[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn[aria-busy=true]:before,.viking-btn[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn viking-icon,.viking-btn .viking-icon,.viking-btn [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn{line-height:1}.viking-btn viking-icon,.viking-btn .viking-icon,.viking-btn [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none}.viking-sm{min-height:var(--viking-control-height-sm);padding:0 var(--viking-space-2);font-size:var(--viking-font-size-xs);min-width:auto}.viking-xs{min-height:var(--viking-control-height-xs);padding:0 var(--viking-space-1);font-size:var(--viking-font-size-xs);min-width:auto}.viking-square{width:var(--viking-control-height);min-width:var(--viking-control-height);padding:0}.viking-square.viking-sm{width:var(--viking-control-height-sm);min-width:var(--viking-control-height-sm)}.viking-square.viking-xs{width:var(--viking-control-height-xs);min-width:var(--viking-control-height-xs)}.viking-square .viking-btn-label{display:none}.viking-outline{background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.viking-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border-strong));color:var(--viking-text);box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.viking-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:var(--viking-border-strong);box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-primary{background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-primary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);color:var(--viking-accent-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-primary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-secondary{background:var(--viking-accent-secondary);color:var(--viking-accent-secondary-content);border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-secondary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-secondary-hover);border-color:var(--viking-accent-secondary-hover);color:var(--viking-accent-secondary-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-secondary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-filled{background:var(--viking-surface-alt);color:var(--viking-text);border-color:var(--viking-border);box-shadow:var(--viking-shadow-xs)}.viking-filled:hover:not(:disabled):not([aria-busy=true]){border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border));background:color-mix(in srgb,var(--viking-accent) 8%,var(--viking-surface-alt));box-shadow:var(--viking-shadow-sm);transform:translateY(var(--viking-state-hover-lift))}.viking-filled:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm);border-color:color-mix(in srgb,var(--viking-accent) 20%,var(--viking-border));background:color-mix(in srgb,var(--viking-surface-alt) 84%,var(--viking-accent))}.viking-danger{background:var(--viking-danger);color:var(--viking-on-danger);border-color:color-mix(in srgb,var(--viking-danger) 85%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-danger:hover:not(:disabled):not([aria-busy=true]){background:color-mix(in srgb,var(--viking-danger) 88%,var(--viking-white));border-color:color-mix(in srgb,var(--viking-danger) 92%,var(--viking-white));color:var(--viking-on-danger);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-danger:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-danger) 72%,var(--viking-black));background:color-mix(in srgb,var(--viking-danger) 84%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-ghost{background:transparent;color:var(--viking-text);min-width:auto;box-shadow:none;border-color:transparent}.viking-ghost:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-ghost:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-subtle{background:transparent;color:var(--viking-text-muted);border-color:var(--viking-border-subtle);min-width:auto;box-shadow:none}.viking-subtle:hover:not(:disabled):not([aria-busy=true]){color:var(--viking-text);background:var(--viking-accent-soft);border-color:var(--viking-border-strong)}.viking-subtle:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:var(--viking-border);background:color-mix(in srgb,var(--viking-accent-soft) 70%,var(--viking-surface));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 24%,transparent)}.viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:inherit;min-width:0;justify-content:center;white-space:nowrap}.viking-btn kbd{margin-top:0}.viking-btn-kbd{font-family:var(--viking-font-family-mono);font-size:var(--viking-font-size-xs);color:var(--viking-text-muted);background:var(--viking-surface-alt);border:1px solid var(--viking-border);border-radius:var(--viking-radius-xs);padding:0 var(--viking-space-half);line-height:1.4;margin-left:var(--viking-space-half);font-weight:var(--viking-font-weight-medium)}\n"], dependencies: [{ kind: "component", type: VikingIcon, selector: "viking-icon", inputs: ["name", "size", "sizePreset", "variant", "color", "backdrop", "backdropTone", "spin"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
4930
5070
|
}
|
|
4931
5071
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: VikingButton, decorators: [{
|
|
4932
5072
|
type: Component,
|
|
@@ -4962,7 +5102,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
4962
5102
|
<kbd class="viking-btn-kbd">{{ kbd() }}</kbd>
|
|
4963
5103
|
}
|
|
4964
5104
|
</viking-button-wc>
|
|
4965
|
-
`, styles: [".viking-btn,a.viking-btn,button.viking-btn{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn:focus-visible,a.viking-btn:focus-visible,button.viking-btn:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn:disabled,.viking-btn[aria-busy=true],a.viking-btn:disabled,a.viking-btn[aria-busy=true],button.viking-btn:disabled,button.viking-btn[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn[aria-busy=true] .viking-btn-label,a.viking-btn[aria-busy=true] .viking-btn-label,button.viking-btn[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn viking-icon,.viking-btn .viking-icon,a.viking-btn viking-icon,a.viking-btn .viking-icon,button.viking-btn viking-icon,button.viking-btn .viking-icon{flex-shrink:0;pointer-events:none}.viking-btn-primary,a.viking-btn-primary,button.viking-btn-primary{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn-primary:focus-visible,a.viking-btn-primary:focus-visible,button.viking-btn-primary:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-primary:disabled,.viking-btn-primary[aria-busy=true],a.viking-btn-primary:disabled,a.viking-btn-primary[aria-busy=true],button.viking-btn-primary:disabled,button.viking-btn-primary[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-primary[aria-busy=true] .viking-btn-label,a.viking-btn-primary[aria-busy=true] .viking-btn-label,button.viking-btn-primary[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-primary viking-icon,.viking-btn-primary .viking-icon,a.viking-btn-primary viking-icon,a.viking-btn-primary .viking-icon,button.viking-btn-primary viking-icon,button.viking-btn-primary .viking-icon{flex-shrink:0;pointer-events:none}.viking-btn-primary,a.viking-btn-primary,button.viking-btn-primary{background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);color:var(--viking-accent-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-primary:active:not(:disabled):not([aria-busy=true]),a.viking-btn-primary:active:not(:disabled):not([aria-busy=true]),button.viking-btn-primary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn-secondary,a.viking-btn-secondary,button.viking-btn-secondary{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn-secondary:focus-visible,a.viking-btn-secondary:focus-visible,button.viking-btn-secondary:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-secondary:disabled,.viking-btn-secondary[aria-busy=true],a.viking-btn-secondary:disabled,a.viking-btn-secondary[aria-busy=true],button.viking-btn-secondary:disabled,button.viking-btn-secondary[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-secondary[aria-busy=true] .viking-btn-label,a.viking-btn-secondary[aria-busy=true] .viking-btn-label,button.viking-btn-secondary[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-secondary viking-icon,.viking-btn-secondary .viking-icon,a.viking-btn-secondary viking-icon,a.viking-btn-secondary .viking-icon,button.viking-btn-secondary viking-icon,button.viking-btn-secondary .viking-icon{flex-shrink:0;pointer-events:none}.viking-btn-secondary,a.viking-btn-secondary,button.viking-btn-secondary{background:var(--viking-accent-secondary);color:var(--viking-accent-secondary-content);border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-secondary:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-secondary:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-secondary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-secondary-hover);border-color:var(--viking-accent-secondary-hover);color:var(--viking-accent-secondary-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-secondary:active:not(:disabled):not([aria-busy=true]),a.viking-btn-secondary:active:not(:disabled):not([aria-busy=true]),button.viking-btn-secondary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn-outline,a.viking-btn-outline,button.viking-btn-outline{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn-outline:focus-visible,a.viking-btn-outline:focus-visible,button.viking-btn-outline:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-outline:disabled,.viking-btn-outline[aria-busy=true],a.viking-btn-outline:disabled,a.viking-btn-outline[aria-busy=true],button.viking-btn-outline:disabled,button.viking-btn-outline[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-outline[aria-busy=true] .viking-btn-label,a.viking-btn-outline[aria-busy=true] .viking-btn-label,button.viking-btn-outline[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-outline viking-icon,.viking-btn-outline .viking-icon,a.viking-btn-outline viking-icon,a.viking-btn-outline .viking-icon,button.viking-btn-outline viking-icon,button.viking-btn-outline .viking-icon{flex-shrink:0;pointer-events:none}.viking-btn-outline,a.viking-btn-outline,button.viking-btn-outline{background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border-strong));color:var(--viking-text);box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-outline:active:not(:disabled):not([aria-busy=true]),a.viking-btn-outline:active:not(:disabled):not([aria-busy=true]),button.viking-btn-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn-danger,a.viking-btn-danger,button.viking-btn-danger{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn-danger:focus-visible,a.viking-btn-danger:focus-visible,button.viking-btn-danger:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-danger:disabled,.viking-btn-danger[aria-busy=true],a.viking-btn-danger:disabled,a.viking-btn-danger[aria-busy=true],button.viking-btn-danger:disabled,button.viking-btn-danger[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-danger[aria-busy=true] .viking-btn-label,a.viking-btn-danger[aria-busy=true] .viking-btn-label,button.viking-btn-danger[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-danger viking-icon,.viking-btn-danger .viking-icon,a.viking-btn-danger viking-icon,a.viking-btn-danger .viking-icon,button.viking-btn-danger viking-icon,button.viking-btn-danger .viking-icon{flex-shrink:0;pointer-events:none}.viking-btn-danger,a.viking-btn-danger,button.viking-btn-danger{background:var(--viking-danger);color:var(--viking-on-danger);border-color:color-mix(in srgb,var(--viking-danger) 85%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]){background:color-mix(in srgb,var(--viking-danger) 88%,var(--viking-white));border-color:color-mix(in srgb,var(--viking-danger) 92%,var(--viking-white));color:var(--viking-on-danger);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-danger:active:not(:disabled):not([aria-busy=true]),a.viking-btn-danger:active:not(:disabled):not([aria-busy=true]),button.viking-btn-danger:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn-ghost,a.viking-btn-ghost,button.viking-btn-ghost{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn-ghost:focus-visible,a.viking-btn-ghost:focus-visible,button.viking-btn-ghost:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-ghost:disabled,.viking-btn-ghost[aria-busy=true],a.viking-btn-ghost:disabled,a.viking-btn-ghost[aria-busy=true],button.viking-btn-ghost:disabled,button.viking-btn-ghost[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-ghost[aria-busy=true] .viking-btn-label,a.viking-btn-ghost[aria-busy=true] .viking-btn-label,button.viking-btn-ghost[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-ghost viking-icon,.viking-btn-ghost .viking-icon,a.viking-btn-ghost viking-icon,a.viking-btn-ghost .viking-icon,button.viking-btn-ghost viking-icon,button.viking-btn-ghost .viking-icon{flex-shrink:0;pointer-events:none}.viking-btn-ghost,a.viking-btn-ghost,button.viking-btn-ghost{background:transparent;color:var(--viking-text);min-width:auto;box-shadow:none;border-color:transparent}.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]),a.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]),button.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-btn-subtle,a.viking-btn-subtle,button.viking-btn-subtle{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn-subtle:focus-visible,a.viking-btn-subtle:focus-visible,button.viking-btn-subtle:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-subtle:disabled,.viking-btn-subtle[aria-busy=true],a.viking-btn-subtle:disabled,a.viking-btn-subtle[aria-busy=true],button.viking-btn-subtle:disabled,button.viking-btn-subtle[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-subtle[aria-busy=true] .viking-btn-label,a.viking-btn-subtle[aria-busy=true] .viking-btn-label,button.viking-btn-subtle[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn-subtle viking-icon,.viking-btn-subtle .viking-icon,a.viking-btn-subtle viking-icon,a.viking-btn-subtle .viking-icon,button.viking-btn-subtle viking-icon,button.viking-btn-subtle .viking-icon{flex-shrink:0;pointer-events:none}.viking-btn-subtle,a.viking-btn-subtle,button.viking-btn-subtle{background:transparent;color:var(--viking-text-muted);border-color:var(--viking-border-subtle);min-width:auto;box-shadow:none}.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]){color:var(--viking-text);background:var(--viking-accent-soft);border-color:var(--viking-border-strong)}.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]),a.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]),button.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-btn.viking-outline{background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border-strong));color:var(--viking-text);box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-primary{background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-primary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);color:var(--viking-accent-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-primary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-secondary{background:var(--viking-accent-secondary);color:var(--viking-accent-secondary-content);border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-secondary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-secondary-hover);border-color:var(--viking-accent-secondary-hover);color:var(--viking-accent-secondary-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-secondary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-filled{background:var(--viking-surface-alt);color:var(--viking-text);border-color:var(--viking-border);box-shadow:var(--viking-shadow-xs)}.viking-btn.viking-filled:hover:not(:disabled):not([aria-busy=true]){border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border));background:color-mix(in srgb,var(--viking-accent) 8%,var(--viking-surface-alt));box-shadow:var(--viking-shadow-sm);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-filled:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale))}.viking-btn.viking-danger{background:var(--viking-danger);color:var(--viking-on-danger);border-color:color-mix(in srgb,var(--viking-danger) 85%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-danger:hover:not(:disabled):not([aria-busy=true]){background:color-mix(in srgb,var(--viking-danger) 88%,var(--viking-white));border-color:color-mix(in srgb,var(--viking-danger) 92%,var(--viking-white));color:var(--viking-on-danger);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-danger:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-ghost{background:transparent;color:var(--viking-text);min-width:auto;box-shadow:none;border-color:transparent}.viking-btn.viking-ghost:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-btn.viking-ghost:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-btn.viking-subtle{background:transparent;color:var(--viking-text-muted);border-color:var(--viking-border-subtle);min-width:auto;box-shadow:none}.viking-btn.viking-subtle:hover:not(:disabled):not([aria-busy=true]){color:var(--viking-text);background:var(--viking-accent-soft);border-color:var(--viking-border-strong)}.viking-btn.viking-subtle:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-btn.viking-compact{min-width:0}.viking-btn.viking-full{width:100%;min-width:0}:host{display:inline-flex}:host(.viking-full){display:flex}:host(.viking-full) .viking-btn{width:100%;min-width:0}:host(.viking-compact) .viking-btn{min-width:0}.viking-btn{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.viking-btn:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn:disabled,.viking-btn[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn[aria-busy=true] .viking-btn-label{opacity:.85}.viking-btn viking-icon,.viking-btn .viking-icon{flex-shrink:0;pointer-events:none}.viking-sm{min-height:var(--viking-control-height-sm);padding:0 var(--viking-space-2);font-size:var(--viking-font-size-xs);min-width:auto}.viking-xs{min-height:var(--viking-control-height-xs);padding:0 var(--viking-space-1);font-size:var(--viking-font-size-xs);min-width:auto}.viking-square{width:var(--viking-control-height);min-width:var(--viking-control-height);padding:0}.viking-square.viking-sm{width:var(--viking-control-height-sm);min-width:var(--viking-control-height-sm)}.viking-square.viking-xs{width:var(--viking-control-height-xs);min-width:var(--viking-control-height-xs)}.viking-square .viking-btn-label{display:none}.viking-outline{background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.viking-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border-strong));color:var(--viking-text);box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.viking-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-primary{background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-primary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);color:var(--viking-accent-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-primary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-secondary{background:var(--viking-accent-secondary);color:var(--viking-accent-secondary-content);border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-secondary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-secondary-hover);border-color:var(--viking-accent-secondary-hover);color:var(--viking-accent-secondary-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-secondary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-filled{background:var(--viking-surface-alt);color:var(--viking-text);border-color:var(--viking-border);box-shadow:var(--viking-shadow-xs)}.viking-filled:hover:not(:disabled):not([aria-busy=true]){border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border));background:color-mix(in srgb,var(--viking-accent) 8%,var(--viking-surface-alt));box-shadow:var(--viking-shadow-sm);transform:translateY(var(--viking-state-hover-lift))}.viking-filled:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale))}.viking-danger{background:var(--viking-danger);color:var(--viking-on-danger);border-color:color-mix(in srgb,var(--viking-danger) 85%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-danger:hover:not(:disabled):not([aria-busy=true]){background:color-mix(in srgb,var(--viking-danger) 88%,var(--viking-white));border-color:color-mix(in srgb,var(--viking-danger) 92%,var(--viking-white));color:var(--viking-on-danger);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-danger:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm)}.viking-ghost{background:transparent;color:var(--viking-text);min-width:auto;box-shadow:none;border-color:transparent}.viking-ghost:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-ghost:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-subtle{background:transparent;color:var(--viking-text-muted);border-color:var(--viking-border-subtle);min-width:auto;box-shadow:none}.viking-subtle:hover:not(:disabled):not([aria-busy=true]){color:var(--viking-text);background:var(--viking-accent-soft);border-color:var(--viking-border-strong)}.viking-subtle:active:not(:disabled):not([aria-busy=true]){transform:scale(var(--viking-state-active-scale))}.viking-btn-label{display:inline-flex;align-items:center;line-height:inherit}.viking-btn-kbd{font-family:var(--viking-font-family-mono);font-size:var(--viking-font-size-xs);color:var(--viking-text-muted);background:var(--viking-surface-alt);border:1px solid var(--viking-border);border-radius:var(--viking-radius-xs);padding:0 var(--viking-space-half);line-height:1.4;margin-left:var(--viking-space-half);font-weight:var(--viking-font-weight-medium)}\n"] }]
|
|
5105
|
+
`, styles: [".viking-btn,a.viking-btn,button.viking-btn{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn:focus-visible,a.viking-btn:focus-visible,button.viking-btn:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn:before,a.viking-btn:before,button.viking-btn:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn:after,a.viking-btn:after,button.viking-btn:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn:disabled,.viking-btn[aria-busy=true],a.viking-btn:disabled,a.viking-btn[aria-busy=true],button.viking-btn:disabled,button.viking-btn[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn[aria-busy=true]:before,.viking-btn[aria-busy=true] .viking-btn-label,a.viking-btn[aria-busy=true]:before,a.viking-btn[aria-busy=true] .viking-btn-label,button.viking-btn[aria-busy=true]:before,button.viking-btn[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn viking-icon,.viking-btn .viking-icon,.viking-btn [data-viking-icon],a.viking-btn viking-icon,a.viking-btn .viking-icon,a.viking-btn [data-viking-icon],button.viking-btn viking-icon,button.viking-btn .viking-icon,button.viking-btn [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn .viking-btn-label,a.viking-btn .viking-btn-label,button.viking-btn .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn-primary,a.viking-btn-primary,button.viking-btn-primary{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn-primary:focus-visible,a.viking-btn-primary:focus-visible,button.viking-btn-primary:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-primary:before,a.viking-btn-primary:before,button.viking-btn-primary:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn-primary:after,a.viking-btn-primary:after,button.viking-btn-primary:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn-primary:disabled,.viking-btn-primary[aria-busy=true],a.viking-btn-primary:disabled,a.viking-btn-primary[aria-busy=true],button.viking-btn-primary:disabled,button.viking-btn-primary[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-primary[aria-busy=true]:before,.viking-btn-primary[aria-busy=true] .viking-btn-label,a.viking-btn-primary[aria-busy=true]:before,a.viking-btn-primary[aria-busy=true] .viking-btn-label,button.viking-btn-primary[aria-busy=true]:before,button.viking-btn-primary[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn-primary viking-icon,.viking-btn-primary .viking-icon,.viking-btn-primary [data-viking-icon],a.viking-btn-primary viking-icon,a.viking-btn-primary .viking-icon,a.viking-btn-primary [data-viking-icon],button.viking-btn-primary viking-icon,button.viking-btn-primary .viking-icon,button.viking-btn-primary [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn-primary .viking-btn-label,a.viking-btn-primary .viking-btn-label,button.viking-btn-primary .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn-primary,a.viking-btn-primary,button.viking-btn-primary{background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-primary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);color:var(--viking-accent-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-primary:active:not(:disabled):not([aria-busy=true]),a.viking-btn-primary:active:not(:disabled):not([aria-busy=true]),button.viking-btn-primary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-btn-secondary,a.viking-btn-secondary,button.viking-btn-secondary{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn-secondary:focus-visible,a.viking-btn-secondary:focus-visible,button.viking-btn-secondary:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-secondary:before,a.viking-btn-secondary:before,button.viking-btn-secondary:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn-secondary:after,a.viking-btn-secondary:after,button.viking-btn-secondary:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn-secondary:disabled,.viking-btn-secondary[aria-busy=true],a.viking-btn-secondary:disabled,a.viking-btn-secondary[aria-busy=true],button.viking-btn-secondary:disabled,button.viking-btn-secondary[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-secondary[aria-busy=true]:before,.viking-btn-secondary[aria-busy=true] .viking-btn-label,a.viking-btn-secondary[aria-busy=true]:before,a.viking-btn-secondary[aria-busy=true] .viking-btn-label,button.viking-btn-secondary[aria-busy=true]:before,button.viking-btn-secondary[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn-secondary viking-icon,.viking-btn-secondary .viking-icon,.viking-btn-secondary [data-viking-icon],a.viking-btn-secondary viking-icon,a.viking-btn-secondary .viking-icon,a.viking-btn-secondary [data-viking-icon],button.viking-btn-secondary viking-icon,button.viking-btn-secondary .viking-icon,button.viking-btn-secondary [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn-secondary .viking-btn-label,a.viking-btn-secondary .viking-btn-label,button.viking-btn-secondary .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn-secondary,a.viking-btn-secondary,button.viking-btn-secondary{background:var(--viking-accent-secondary);color:var(--viking-accent-secondary-content);border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-secondary:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-secondary:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-secondary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-secondary-hover);border-color:var(--viking-accent-secondary-hover);color:var(--viking-accent-secondary-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-secondary:active:not(:disabled):not([aria-busy=true]),a.viking-btn-secondary:active:not(:disabled):not([aria-busy=true]),button.viking-btn-secondary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-btn-outline,a.viking-btn-outline,button.viking-btn-outline{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn-outline:focus-visible,a.viking-btn-outline:focus-visible,button.viking-btn-outline:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-outline:before,a.viking-btn-outline:before,button.viking-btn-outline:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn-outline:after,a.viking-btn-outline:after,button.viking-btn-outline:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn-outline:disabled,.viking-btn-outline[aria-busy=true],a.viking-btn-outline:disabled,a.viking-btn-outline[aria-busy=true],button.viking-btn-outline:disabled,button.viking-btn-outline[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-outline[aria-busy=true]:before,.viking-btn-outline[aria-busy=true] .viking-btn-label,a.viking-btn-outline[aria-busy=true]:before,a.viking-btn-outline[aria-busy=true] .viking-btn-label,button.viking-btn-outline[aria-busy=true]:before,button.viking-btn-outline[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn-outline viking-icon,.viking-btn-outline .viking-icon,.viking-btn-outline [data-viking-icon],a.viking-btn-outline viking-icon,a.viking-btn-outline .viking-icon,a.viking-btn-outline [data-viking-icon],button.viking-btn-outline viking-icon,button.viking-btn-outline .viking-icon,button.viking-btn-outline [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn-outline .viking-btn-label,a.viking-btn-outline .viking-btn-label,button.viking-btn-outline .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn-outline,a.viking-btn-outline,button.viking-btn-outline{background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border-strong));color:var(--viking-text);box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-outline:active:not(:disabled):not([aria-busy=true]),a.viking-btn-outline:active:not(:disabled):not([aria-busy=true]),button.viking-btn-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:var(--viking-border-strong);box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-btn-danger,a.viking-btn-danger,button.viking-btn-danger{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn-danger:focus-visible,a.viking-btn-danger:focus-visible,button.viking-btn-danger:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-danger:before,a.viking-btn-danger:before,button.viking-btn-danger:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn-danger:after,a.viking-btn-danger:after,button.viking-btn-danger:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn-danger:disabled,.viking-btn-danger[aria-busy=true],a.viking-btn-danger:disabled,a.viking-btn-danger[aria-busy=true],button.viking-btn-danger:disabled,button.viking-btn-danger[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-danger[aria-busy=true]:before,.viking-btn-danger[aria-busy=true] .viking-btn-label,a.viking-btn-danger[aria-busy=true]:before,a.viking-btn-danger[aria-busy=true] .viking-btn-label,button.viking-btn-danger[aria-busy=true]:before,button.viking-btn-danger[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn-danger viking-icon,.viking-btn-danger .viking-icon,.viking-btn-danger [data-viking-icon],a.viking-btn-danger viking-icon,a.viking-btn-danger .viking-icon,a.viking-btn-danger [data-viking-icon],button.viking-btn-danger viking-icon,button.viking-btn-danger .viking-icon,button.viking-btn-danger [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn-danger .viking-btn-label,a.viking-btn-danger .viking-btn-label,button.viking-btn-danger .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn-danger,a.viking-btn-danger,button.viking-btn-danger{background:var(--viking-danger);color:var(--viking-on-danger);border-color:color-mix(in srgb,var(--viking-danger) 85%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-danger:hover:not(:disabled):not([aria-busy=true]){background:color-mix(in srgb,var(--viking-danger) 88%,var(--viking-white));border-color:color-mix(in srgb,var(--viking-danger) 92%,var(--viking-white));color:var(--viking-on-danger);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn-danger:active:not(:disabled):not([aria-busy=true]),a.viking-btn-danger:active:not(:disabled):not([aria-busy=true]),button.viking-btn-danger:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-danger) 72%,var(--viking-black));background:color-mix(in srgb,var(--viking-danger) 84%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn-ghost,a.viking-btn-ghost,button.viking-btn-ghost{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn-ghost:focus-visible,a.viking-btn-ghost:focus-visible,button.viking-btn-ghost:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-ghost:before,a.viking-btn-ghost:before,button.viking-btn-ghost:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn-ghost:after,a.viking-btn-ghost:after,button.viking-btn-ghost:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn-ghost:disabled,.viking-btn-ghost[aria-busy=true],a.viking-btn-ghost:disabled,a.viking-btn-ghost[aria-busy=true],button.viking-btn-ghost:disabled,button.viking-btn-ghost[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-ghost[aria-busy=true]:before,.viking-btn-ghost[aria-busy=true] .viking-btn-label,a.viking-btn-ghost[aria-busy=true]:before,a.viking-btn-ghost[aria-busy=true] .viking-btn-label,button.viking-btn-ghost[aria-busy=true]:before,button.viking-btn-ghost[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn-ghost viking-icon,.viking-btn-ghost .viking-icon,.viking-btn-ghost [data-viking-icon],a.viking-btn-ghost viking-icon,a.viking-btn-ghost .viking-icon,a.viking-btn-ghost [data-viking-icon],button.viking-btn-ghost viking-icon,button.viking-btn-ghost .viking-icon,button.viking-btn-ghost [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn-ghost .viking-btn-label,a.viking-btn-ghost .viking-btn-label,button.viking-btn-ghost .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn-ghost,a.viking-btn-ghost,button.viking-btn-ghost{background:transparent;color:var(--viking-text);min-width:auto;box-shadow:none;border-color:transparent}.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-ghost:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]),a.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]),button.viking-btn-ghost:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-btn-subtle,a.viking-btn-subtle,button.viking-btn-subtle{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn-subtle:focus-visible,a.viking-btn-subtle:focus-visible,button.viking-btn-subtle:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn-subtle:before,a.viking-btn-subtle:before,button.viking-btn-subtle:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn-subtle:after,a.viking-btn-subtle:after,button.viking-btn-subtle:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn-subtle:disabled,.viking-btn-subtle[aria-busy=true],a.viking-btn-subtle:disabled,a.viking-btn-subtle[aria-busy=true],button.viking-btn-subtle:disabled,button.viking-btn-subtle[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn-subtle[aria-busy=true]:before,.viking-btn-subtle[aria-busy=true] .viking-btn-label,a.viking-btn-subtle[aria-busy=true]:before,a.viking-btn-subtle[aria-busy=true] .viking-btn-label,button.viking-btn-subtle[aria-busy=true]:before,button.viking-btn-subtle[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn-subtle viking-icon,.viking-btn-subtle .viking-icon,.viking-btn-subtle [data-viking-icon],a.viking-btn-subtle viking-icon,a.viking-btn-subtle .viking-icon,a.viking-btn-subtle [data-viking-icon],button.viking-btn-subtle viking-icon,button.viking-btn-subtle .viking-icon,button.viking-btn-subtle [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn-subtle .viking-btn-label,a.viking-btn-subtle .viking-btn-label,button.viking-btn-subtle .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn-subtle,a.viking-btn-subtle,button.viking-btn-subtle{background:transparent;color:var(--viking-text-muted);border-color:var(--viking-border-subtle);min-width:auto;box-shadow:none}.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]),a.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]),button.viking-btn-subtle:hover:not(:disabled):not([aria-busy=true]){color:var(--viking-text);background:var(--viking-accent-soft);border-color:var(--viking-border-strong)}.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]),a.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]),button.viking-btn-subtle:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:var(--viking-border);background:color-mix(in srgb,var(--viking-accent-soft) 70%,var(--viking-surface));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 24%,transparent)}.viking-btn.viking-outline{background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border-strong));color:var(--viking-text);box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:var(--viking-border-strong);box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-btn.viking-primary{background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-primary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);color:var(--viking-accent-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-primary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-btn.viking-secondary{background:var(--viking-accent-secondary);color:var(--viking-accent-secondary-content);border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-secondary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-secondary-hover);border-color:var(--viking-accent-secondary-hover);color:var(--viking-accent-secondary-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-secondary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-btn.viking-filled{background:var(--viking-surface-alt);color:var(--viking-text);border-color:var(--viking-border);box-shadow:var(--viking-shadow-xs)}.viking-btn.viking-filled:hover:not(:disabled):not([aria-busy=true]){border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border));background:color-mix(in srgb,var(--viking-accent) 8%,var(--viking-surface-alt));box-shadow:var(--viking-shadow-sm);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-filled:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm);border-color:color-mix(in srgb,var(--viking-accent) 20%,var(--viking-border));background:color-mix(in srgb,var(--viking-surface-alt) 84%,var(--viking-accent))}.viking-btn.viking-danger{background:var(--viking-danger);color:var(--viking-on-danger);border-color:color-mix(in srgb,var(--viking-danger) 85%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-danger:hover:not(:disabled):not([aria-busy=true]){background:color-mix(in srgb,var(--viking-danger) 88%,var(--viking-white));border-color:color-mix(in srgb,var(--viking-danger) 92%,var(--viking-white));color:var(--viking-on-danger);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-btn.viking-danger:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-danger) 72%,var(--viking-black));background:color-mix(in srgb,var(--viking-danger) 84%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-btn.viking-ghost{background:transparent;color:var(--viking-text);min-width:auto;box-shadow:none;border-color:transparent}.viking-btn.viking-ghost:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-btn.viking-ghost:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-btn.viking-subtle{background:transparent;color:var(--viking-text-muted);border-color:var(--viking-border-subtle);min-width:auto;box-shadow:none}.viking-btn.viking-subtle:hover:not(:disabled):not([aria-busy=true]){color:var(--viking-text);background:var(--viking-accent-soft);border-color:var(--viking-border-strong)}.viking-btn.viking-subtle:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:var(--viking-border);background:color-mix(in srgb,var(--viking-accent-soft) 70%,var(--viking-surface));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 24%,transparent)}.viking-btn.viking-compact{min-width:0}.viking-btn.viking-full{width:100%;min-width:0}.viking-btn-label{display:inline-flex;align-items:center;line-height:inherit}:host{display:inline-flex;align-items:center}:host(.viking-full){display:flex}:host(.viking-full) .viking-btn{width:100%;min-width:0}:host(.viking-compact) .viking-btn{min-width:0}.viking-btn{font-family:var(--viking-font-family);font-size:var(--viking-font-size-ui);font-weight:var(--viking-font-weight-semibold);letter-spacing:var(--viking-letter-spacing-wide);line-height:var(--viking-line-height-snug);display:inline-flex;align-items:center;justify-content:center;gap:var(--viking-space-1);min-height:var(--viking-control-height);padding:0 var(--viking-control-padding-x);border-radius:var(--viking-radius-lg);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:var(--viking-transition-interactive);width:auto;min-width:var(--viking-btn-min-width, 120px);white-space:nowrap;position:relative;background-clip:padding-box;isolation:isolate;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overflow:hidden;box-shadow:var(--viking-shadow-sm)}.viking-btn:focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset);z-index:1}.viking-btn:before{content:\"\";position:absolute;inset:1px 1px auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 45%,transparent),transparent);pointer-events:none;opacity:.82;transition:var(--viking-transition-interactive)}.viking-btn:after{content:\"\";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-100) 18%,transparent),transparent);pointer-events:none;opacity:.45;transition:var(--viking-transition-interactive)}.viking-btn:disabled,.viking-btn[aria-busy=true]{opacity:var(--viking-state-disabled-opacity);cursor:not-allowed;transform:none!important;box-shadow:none!important}.viking-btn[aria-busy=true]:before,.viking-btn[aria-busy=true] .viking-btn-label{opacity:.85;transform:translateY(1px)}.viking-btn viking-icon,.viking-btn .viking-icon,.viking-btn [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none;flex:0 0 auto}.viking-btn .viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:1.2;min-width:0;justify-content:center;text-align:center;white-space:nowrap}.viking-btn{line-height:1}.viking-btn viking-icon,.viking-btn .viking-icon,.viking-btn [data-viking-icon]{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:var(--viking-icon-size-md);height:var(--viking-icon-size-md);line-height:1;pointer-events:none}.viking-sm{min-height:var(--viking-control-height-sm);padding:0 var(--viking-space-2);font-size:var(--viking-font-size-xs);min-width:auto}.viking-xs{min-height:var(--viking-control-height-xs);padding:0 var(--viking-space-1);font-size:var(--viking-font-size-xs);min-width:auto}.viking-square{width:var(--viking-control-height);min-width:var(--viking-control-height);padding:0}.viking-square.viking-sm{width:var(--viking-control-height-sm);min-width:var(--viking-control-height-sm)}.viking-square.viking-xs{width:var(--viking-control-height-xs);min-width:var(--viking-control-height-xs)}.viking-square .viking-btn-label{display:none}.viking-outline{background:var(--viking-surface);color:var(--viking-text);border-color:var(--viking-border-strong);box-shadow:var(--viking-shadow-sm)}.viking-outline:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-surface-alt);border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border-strong));color:var(--viking-text);box-shadow:var(--viking-shadow-md);transform:translateY(var(--viking-state-hover-lift))}.viking-outline:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:var(--viking-border-strong);box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-primary{background:var(--viking-accent);color:var(--viking-accent-content);border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-primary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-hover);border-color:var(--viking-accent-hover);color:var(--viking-accent-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-primary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-accent) 82%,var(--viking-black));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-secondary{background:var(--viking-accent-secondary);color:var(--viking-accent-secondary-content);border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-secondary:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-secondary-hover);border-color:var(--viking-accent-secondary-hover);color:var(--viking-accent-secondary-content);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-secondary:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-accent-secondary) 82%,var(--viking-black));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 28%,transparent),var(--viking-shadow-sm)}.viking-filled{background:var(--viking-surface-alt);color:var(--viking-text);border-color:var(--viking-border);box-shadow:var(--viking-shadow-xs)}.viking-filled:hover:not(:disabled):not([aria-busy=true]){border-color:color-mix(in srgb,var(--viking-accent) 45%,var(--viking-border));background:color-mix(in srgb,var(--viking-accent) 8%,var(--viking-surface-alt));box-shadow:var(--viking-shadow-sm);transform:translateY(var(--viking-state-hover-lift))}.viking-filled:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-sm);border-color:color-mix(in srgb,var(--viking-accent) 20%,var(--viking-border));background:color-mix(in srgb,var(--viking-surface-alt) 84%,var(--viking-accent))}.viking-danger{background:var(--viking-danger);color:var(--viking-on-danger);border-color:color-mix(in srgb,var(--viking-danger) 85%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-danger:hover:not(:disabled):not([aria-busy=true]){background:color-mix(in srgb,var(--viking-danger) 88%,var(--viking-white));border-color:color-mix(in srgb,var(--viking-danger) 92%,var(--viking-white));color:var(--viking-on-danger);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}.viking-danger:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:color-mix(in srgb,var(--viking-danger) 72%,var(--viking-black));background:color-mix(in srgb,var(--viking-danger) 84%,var(--viking-black));box-shadow:var(--viking-shadow-sm)}.viking-ghost{background:transparent;color:var(--viking-text);min-width:auto;box-shadow:none;border-color:transparent}.viking-ghost:hover:not(:disabled):not([aria-busy=true]){background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-ghost:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));background:var(--viking-accent-soft);color:var(--viking-accent-strong)}.viking-subtle{background:transparent;color:var(--viking-text-muted);border-color:var(--viking-border-subtle);min-width:auto;box-shadow:none}.viking-subtle:hover:not(:disabled):not([aria-busy=true]){color:var(--viking-text);background:var(--viking-accent-soft);border-color:var(--viking-border-strong)}.viking-subtle:active:not(:disabled):not([aria-busy=true]){transform:translateY(0) scale(var(--viking-state-active-scale));border-color:var(--viking-border);background:color-mix(in srgb,var(--viking-accent-soft) 70%,var(--viking-surface));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 24%,transparent)}.viking-btn-label{display:inline-flex;align-items:center;gap:var(--viking-space-1);line-height:inherit;min-width:0;justify-content:center;white-space:nowrap}.viking-btn kbd{margin-top:0}.viking-btn-kbd{font-family:var(--viking-font-family-mono);font-size:var(--viking-font-size-xs);color:var(--viking-text-muted);background:var(--viking-surface-alt);border:1px solid var(--viking-border);border-radius:var(--viking-radius-xs);padding:0 var(--viking-space-half);line-height:1.4;margin-left:var(--viking-space-half);font-weight:var(--viking-font-weight-medium)}\n"] }]
|
|
4966
5106
|
}], propDecorators: { variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], iconTrailing: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconTrailing", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], square: [{ type: i0.Input, args: [{ isSignal: true, alias: "square", required: false }] }], fullWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "fullWidth", required: false }] }], compact: [{ type: i0.Input, args: [{ isSignal: true, alias: "compact", required: false }] }], href: [{ type: i0.Input, args: [{ isSignal: true, alias: "href", required: false }] }], target: [{ type: i0.Input, args: [{ isSignal: true, alias: "target", required: false }] }], kbd: [{ type: i0.Input, args: [{ isSignal: true, alias: "kbd", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], pressed: [{ type: i0.Output, args: ["pressed"] }] } });
|
|
4967
5107
|
|
|
4968
5108
|
/**
|
|
@@ -4980,6 +5120,7 @@ class VikingThemeToggle {
|
|
|
4980
5120
|
<button
|
|
4981
5121
|
type="button"
|
|
4982
5122
|
class="theme-toggle-btn"
|
|
5123
|
+
id="theme-toggle-btn"
|
|
4983
5124
|
aria-label="Toggle light and dark theme"
|
|
4984
5125
|
(click)="toggle.emit()"
|
|
4985
5126
|
>
|
|
@@ -4999,6 +5140,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
4999
5140
|
<button
|
|
5000
5141
|
type="button"
|
|
5001
5142
|
class="theme-toggle-btn"
|
|
5143
|
+
id="theme-toggle-btn"
|
|
5002
5144
|
aria-label="Toggle light and dark theme"
|
|
5003
5145
|
(click)="toggle.emit()"
|
|
5004
5146
|
>
|
|
@@ -5019,6 +5161,8 @@ class VikingSiteNavbar {
|
|
|
5019
5161
|
...(ngDevMode ? [{ debugName: "urls" }] : /* istanbul ignore next */ []));
|
|
5020
5162
|
isAuthenticated = input(false, /* @ts-ignore */
|
|
5021
5163
|
...(ngDevMode ? [{ debugName: "isAuthenticated" }] : /* istanbul ignore next */ []));
|
|
5164
|
+
isBusy = input(false, /* @ts-ignore */
|
|
5165
|
+
...(ngDevMode ? [{ debugName: "isBusy" }] : /* istanbul ignore next */ []));
|
|
5022
5166
|
theme = input("dark", /* @ts-ignore */
|
|
5023
5167
|
...(ngDevMode ? [{ debugName: "theme" }] : /* istanbul ignore next */ []));
|
|
5024
5168
|
showSearch = input(false, /* @ts-ignore */
|
|
@@ -5051,7 +5195,7 @@ class VikingSiteNavbar {
|
|
|
5051
5195
|
widgets?.openSearch?.();
|
|
5052
5196
|
}
|
|
5053
5197
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: VikingSiteNavbar, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5054
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: VikingSiteNavbar, isStandalone: true, selector: "viking-site-navbar", inputs: { context: { classPropertyName: "context", publicName: "context", isSignal: true, isRequired: false, transformFunction: null }, urls: { classPropertyName: "urls", publicName: "urls", isSignal: true, isRequired: false, transformFunction: null }, isAuthenticated: { classPropertyName: "isAuthenticated", publicName: "isAuthenticated", isSignal: true, isRequired: false, transformFunction: null }, theme: { classPropertyName: "theme", publicName: "theme", isSignal: true, isRequired: false, transformFunction: null }, showSearch: { classPropertyName: "showSearch", publicName: "showSearch", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { login: "login", logout: "logout", themeToggle: "themeToggle", searchOpen: "searchOpen" }, ngImport: i0, template: `
|
|
5198
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: VikingSiteNavbar, isStandalone: true, selector: "viking-site-navbar", inputs: { context: { classPropertyName: "context", publicName: "context", isSignal: true, isRequired: false, transformFunction: null }, urls: { classPropertyName: "urls", publicName: "urls", isSignal: true, isRequired: false, transformFunction: null }, isAuthenticated: { classPropertyName: "isAuthenticated", publicName: "isAuthenticated", isSignal: true, isRequired: false, transformFunction: null }, isBusy: { classPropertyName: "isBusy", publicName: "isBusy", isSignal: true, isRequired: false, transformFunction: null }, theme: { classPropertyName: "theme", publicName: "theme", isSignal: true, isRequired: false, transformFunction: null }, showSearch: { classPropertyName: "showSearch", publicName: "showSearch", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { login: "login", logout: "logout", themeToggle: "themeToggle", searchOpen: "searchOpen" }, ngImport: i0, template: `
|
|
5055
5199
|
<header class="navbar">
|
|
5056
5200
|
<div class="navbar-content">
|
|
5057
5201
|
<div class="navbar-left">
|
|
@@ -5113,8 +5257,10 @@ class VikingSiteNavbar {
|
|
|
5113
5257
|
<div class="navbar-search" role="search">
|
|
5114
5258
|
<viking-button
|
|
5115
5259
|
variant="outline"
|
|
5260
|
+
class="navbar-search-trigger"
|
|
5116
5261
|
[square]="true"
|
|
5117
5262
|
[compact]="true"
|
|
5263
|
+
id="navbar-search-trigger"
|
|
5118
5264
|
icon="search"
|
|
5119
5265
|
label="Open search (⌘K)"
|
|
5120
5266
|
(pressed)="openSearch()"
|
|
@@ -5127,6 +5273,9 @@ class VikingSiteNavbar {
|
|
|
5127
5273
|
<viking-button
|
|
5128
5274
|
variant="primary"
|
|
5129
5275
|
icon="arrow-right"
|
|
5276
|
+
class="auth-btn auth-btn-desktop"
|
|
5277
|
+
id="auth-btn-desktop"
|
|
5278
|
+
[loading]="isBusy()"
|
|
5130
5279
|
(pressed)="login.emit()"
|
|
5131
5280
|
>
|
|
5132
5281
|
Sign In
|
|
@@ -5135,11 +5284,18 @@ class VikingSiteNavbar {
|
|
|
5135
5284
|
<viking-button
|
|
5136
5285
|
variant="primary"
|
|
5137
5286
|
icon="home"
|
|
5287
|
+
class="auth-btn auth-btn-desktop"
|
|
5288
|
+
id="auth-btn-desktop"
|
|
5138
5289
|
[href]="urls().app + '/dashboard'"
|
|
5139
5290
|
>
|
|
5140
5291
|
Dashboard
|
|
5141
5292
|
</viking-button>
|
|
5142
|
-
<viking-button
|
|
5293
|
+
<viking-button
|
|
5294
|
+
variant="ghost"
|
|
5295
|
+
class="auth-btn auth-signout-btn"
|
|
5296
|
+
id="auth-signout-desktop"
|
|
5297
|
+
[loading]="isBusy()"
|
|
5298
|
+
(pressed)="logout.emit()"
|
|
5143
5299
|
>Sign Out</viking-button
|
|
5144
5300
|
>
|
|
5145
5301
|
}
|
|
@@ -5155,6 +5311,7 @@ class VikingSiteNavbar {
|
|
|
5155
5311
|
[square]="true"
|
|
5156
5312
|
class="menu-toggle-btn"
|
|
5157
5313
|
[icon]="mobileMenuOpen() ? 'x' : 'menu'"
|
|
5314
|
+
id="mobile-menu-btn"
|
|
5158
5315
|
[label]="
|
|
5159
5316
|
mobileMenuOpen()
|
|
5160
5317
|
? 'Close navigation menu'
|
|
@@ -5200,7 +5357,9 @@ class VikingSiteNavbar {
|
|
|
5200
5357
|
<viking-button
|
|
5201
5358
|
variant="primary"
|
|
5202
5359
|
icon="arrow-right"
|
|
5203
|
-
class="mobile-auth-btn"
|
|
5360
|
+
class="mobile-auth-btn auth-btn"
|
|
5361
|
+
id="auth-btn-mobile"
|
|
5362
|
+
[loading]="isBusy()"
|
|
5204
5363
|
[fullWidth]="true"
|
|
5205
5364
|
(pressed)="login.emit(); closeMobileMenu()"
|
|
5206
5365
|
>
|
|
@@ -5210,7 +5369,8 @@ class VikingSiteNavbar {
|
|
|
5210
5369
|
<viking-button
|
|
5211
5370
|
variant="primary"
|
|
5212
5371
|
icon="home"
|
|
5213
|
-
class="mobile-auth-btn"
|
|
5372
|
+
class="mobile-auth-btn auth-btn"
|
|
5373
|
+
id="auth-btn-mobile"
|
|
5214
5374
|
[fullWidth]="true"
|
|
5215
5375
|
[href]="urls().app + '/dashboard'"
|
|
5216
5376
|
(pressed)="closeMobileMenu()"
|
|
@@ -5219,7 +5379,9 @@ class VikingSiteNavbar {
|
|
|
5219
5379
|
</viking-button>
|
|
5220
5380
|
<viking-button
|
|
5221
5381
|
variant="ghost"
|
|
5222
|
-
class="mobile-auth-btn"
|
|
5382
|
+
class="mobile-auth-btn auth-btn auth-signout-btn"
|
|
5383
|
+
id="auth-signout-mobile"
|
|
5384
|
+
[loading]="isBusy()"
|
|
5223
5385
|
[fullWidth]="true"
|
|
5224
5386
|
(pressed)="logout.emit(); closeMobileMenu()"
|
|
5225
5387
|
>
|
|
@@ -5300,8 +5462,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
5300
5462
|
<div class="navbar-search" role="search">
|
|
5301
5463
|
<viking-button
|
|
5302
5464
|
variant="outline"
|
|
5465
|
+
class="navbar-search-trigger"
|
|
5303
5466
|
[square]="true"
|
|
5304
5467
|
[compact]="true"
|
|
5468
|
+
id="navbar-search-trigger"
|
|
5305
5469
|
icon="search"
|
|
5306
5470
|
label="Open search (⌘K)"
|
|
5307
5471
|
(pressed)="openSearch()"
|
|
@@ -5314,6 +5478,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
5314
5478
|
<viking-button
|
|
5315
5479
|
variant="primary"
|
|
5316
5480
|
icon="arrow-right"
|
|
5481
|
+
class="auth-btn auth-btn-desktop"
|
|
5482
|
+
id="auth-btn-desktop"
|
|
5483
|
+
[loading]="isBusy()"
|
|
5317
5484
|
(pressed)="login.emit()"
|
|
5318
5485
|
>
|
|
5319
5486
|
Sign In
|
|
@@ -5322,11 +5489,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
5322
5489
|
<viking-button
|
|
5323
5490
|
variant="primary"
|
|
5324
5491
|
icon="home"
|
|
5492
|
+
class="auth-btn auth-btn-desktop"
|
|
5493
|
+
id="auth-btn-desktop"
|
|
5325
5494
|
[href]="urls().app + '/dashboard'"
|
|
5326
5495
|
>
|
|
5327
5496
|
Dashboard
|
|
5328
5497
|
</viking-button>
|
|
5329
|
-
<viking-button
|
|
5498
|
+
<viking-button
|
|
5499
|
+
variant="ghost"
|
|
5500
|
+
class="auth-btn auth-signout-btn"
|
|
5501
|
+
id="auth-signout-desktop"
|
|
5502
|
+
[loading]="isBusy()"
|
|
5503
|
+
(pressed)="logout.emit()"
|
|
5330
5504
|
>Sign Out</viking-button
|
|
5331
5505
|
>
|
|
5332
5506
|
}
|
|
@@ -5342,6 +5516,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
5342
5516
|
[square]="true"
|
|
5343
5517
|
class="menu-toggle-btn"
|
|
5344
5518
|
[icon]="mobileMenuOpen() ? 'x' : 'menu'"
|
|
5519
|
+
id="mobile-menu-btn"
|
|
5345
5520
|
[label]="
|
|
5346
5521
|
mobileMenuOpen()
|
|
5347
5522
|
? 'Close navigation menu'
|
|
@@ -5387,7 +5562,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
5387
5562
|
<viking-button
|
|
5388
5563
|
variant="primary"
|
|
5389
5564
|
icon="arrow-right"
|
|
5390
|
-
class="mobile-auth-btn"
|
|
5565
|
+
class="mobile-auth-btn auth-btn"
|
|
5566
|
+
id="auth-btn-mobile"
|
|
5567
|
+
[loading]="isBusy()"
|
|
5391
5568
|
[fullWidth]="true"
|
|
5392
5569
|
(pressed)="login.emit(); closeMobileMenu()"
|
|
5393
5570
|
>
|
|
@@ -5397,7 +5574,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
5397
5574
|
<viking-button
|
|
5398
5575
|
variant="primary"
|
|
5399
5576
|
icon="home"
|
|
5400
|
-
class="mobile-auth-btn"
|
|
5577
|
+
class="mobile-auth-btn auth-btn"
|
|
5578
|
+
id="auth-btn-mobile"
|
|
5401
5579
|
[fullWidth]="true"
|
|
5402
5580
|
[href]="urls().app + '/dashboard'"
|
|
5403
5581
|
(pressed)="closeMobileMenu()"
|
|
@@ -5406,7 +5584,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
5406
5584
|
</viking-button>
|
|
5407
5585
|
<viking-button
|
|
5408
5586
|
variant="ghost"
|
|
5409
|
-
class="mobile-auth-btn"
|
|
5587
|
+
class="mobile-auth-btn auth-btn auth-signout-btn"
|
|
5588
|
+
id="auth-signout-mobile"
|
|
5589
|
+
[loading]="isBusy()"
|
|
5410
5590
|
[fullWidth]="true"
|
|
5411
5591
|
(pressed)="logout.emit(); closeMobileMenu()"
|
|
5412
5592
|
>
|
|
@@ -5416,7 +5596,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
5416
5596
|
</nav>
|
|
5417
5597
|
</header>
|
|
5418
5598
|
` }]
|
|
5419
|
-
}], propDecorators: { context: [{ type: i0.Input, args: [{ isSignal: true, alias: "context", required: false }] }], urls: [{ type: i0.Input, args: [{ isSignal: true, alias: "urls", required: false }] }], isAuthenticated: [{ type: i0.Input, args: [{ isSignal: true, alias: "isAuthenticated", required: false }] }], theme: [{ type: i0.Input, args: [{ isSignal: true, alias: "theme", required: false }] }], showSearch: [{ type: i0.Input, args: [{ isSignal: true, alias: "showSearch", required: false }] }], login: [{ type: i0.Output, args: ["login"] }], logout: [{ type: i0.Output, args: ["logout"] }], themeToggle: [{ type: i0.Output, args: ["themeToggle"] }], searchOpen: [{ type: i0.Output, args: ["searchOpen"] }] } });
|
|
5599
|
+
}], propDecorators: { context: [{ type: i0.Input, args: [{ isSignal: true, alias: "context", required: false }] }], urls: [{ type: i0.Input, args: [{ isSignal: true, alias: "urls", required: false }] }], isAuthenticated: [{ type: i0.Input, args: [{ isSignal: true, alias: "isAuthenticated", required: false }] }], isBusy: [{ type: i0.Input, args: [{ isSignal: true, alias: "isBusy", required: false }] }], theme: [{ type: i0.Input, args: [{ isSignal: true, alias: "theme", required: false }] }], showSearch: [{ type: i0.Input, args: [{ isSignal: true, alias: "showSearch", required: false }] }], login: [{ type: i0.Output, args: ["login"] }], logout: [{ type: i0.Output, args: ["logout"] }], themeToggle: [{ type: i0.Output, args: ["themeToggle"] }], searchOpen: [{ type: i0.Output, args: ["searchOpen"] }] } });
|
|
5420
5600
|
|
|
5421
5601
|
/**
|
|
5422
5602
|
* viking-footer — site-wide Drakkar footer shell. Project directory columns and bottom row via slots.
|
|
@@ -5433,7 +5613,7 @@ class VikingFooter {
|
|
|
5433
5613
|
</section>
|
|
5434
5614
|
</div>
|
|
5435
5615
|
</footer>
|
|
5436
|
-
`, isInline: true, styles: [".viking-footer,.mega-footer{background-color:var(--viking-surface, var(--color-surface));border-top:1px solid var(--viking-border-strong, var(--border-layout));padding:calc(var(--viking-space-2) * 2) var(--viking-space-2);font-family:var(--viking-font-family);color:var(--viking-text-muted)}.viking-footer-content,.footer-content{max-width:var(--container-max-width, 1260px);margin:0 auto}.viking-footer-directory,.footer-directory{display:grid;grid-template-columns:1fr;gap:calc(var(--viking-space-2) * 1.75);padding-bottom:calc(var(--viking-space-2) * 2);border-bottom:1px solid var(--viking-border-strong, var(--border-layout))}@media(min-width:600px){.viking-footer-directory,.footer-directory{grid-template-columns:repeat(2,1fr)}}@media(min-width:900px){.viking-footer-directory,.footer-directory{grid-template-columns:repeat(4,1fr)}}.viking-footer-column-title,.footer-column-title{font-size:var(--viking-font-size);font-weight:700;color:var(--viking-text);margin:0 0 var(--viking-space-2);letter-spacing:.05em}.viking-footer-list,.footer-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--viking-space-1)}.viking-footer-list a,.footer-list a{font-size:var(--viking-font-size);color:var(--viking-text-muted);text-decoration:none!important;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}.viking-footer-list a:hover,.footer-list a:hover{color:var(--viking-text);border-bottom-color:var(--viking-text)}.viking-footer-bottom,.footer-bottom{padding-top:var(--viking-space-2);display:flex;flex-direction:column;gap:var(--viking-space-2)}.viking-footer-badges-top,.footer-badges-top{display:flex;justify-content:center;margin-bottom:var(--viking-space-2)}.viking-footer-compliance-row,.footer-compliance-row{display:flex;justify-content:center;align-items:center}.viking-copyright-info,.copyright-info{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--viking-space-2);font-size:var(--viking-font-size);color:var(--viking-text-muted);text-align:center}.viking-copyright-info a,.copyright-info a{color:var(--viking-text-muted);text-decoration:none!important;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}.viking-copyright-info a:hover,.copyright-info a:hover{color:var(--viking-text);border-bottom-color:var(--viking-text)}.viking-usa-badge,.usa-badge{display:inline-flex;align-items:center;gap:var(--viking-space-1);padding:var(--viking-space-1) var(--viking-space-2);border-radius:var(--viking-radius-pill);background-color:transparent;border:1px solid var(--viking-border);cursor:
|
|
5616
|
+
`, isInline: true, styles: [".viking-footer,.mega-footer{background-color:var(--viking-surface, var(--color-surface));border-top:1px solid var(--viking-border-strong, var(--border-layout));padding:calc(var(--viking-space-2) * 2) var(--viking-space-2);font-family:var(--viking-font-family);color:var(--viking-text-muted)}.viking-footer-content,.footer-content{max-width:var(--container-max-width, 1260px);margin:0 auto}.viking-footer-directory,.footer-directory{display:grid;grid-template-columns:1fr;gap:calc(var(--viking-space-2) * 1.75);padding-bottom:calc(var(--viking-space-2) * 2);border-bottom:1px solid var(--viking-border-strong, var(--border-layout))}@media(min-width:600px){.viking-footer-directory,.footer-directory{grid-template-columns:repeat(2,1fr)}}@media(min-width:900px){.viking-footer-directory,.footer-directory{grid-template-columns:repeat(4,1fr)}}.viking-footer-column-title,.footer-column-title{font-size:var(--viking-font-size);font-weight:700;color:var(--viking-text);margin:0 0 var(--viking-space-2);letter-spacing:.05em}.viking-footer-list,.footer-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--viking-space-1)}.viking-footer-list a,.footer-list a{font-size:var(--viking-font-size);color:var(--viking-text-muted);text-decoration:none!important;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}.viking-footer-list a:hover,.footer-list a:hover{color:var(--viking-text);border-bottom-color:var(--viking-text)}.viking-footer-bottom,.footer-bottom{padding-top:var(--viking-space-2);display:flex;flex-direction:column;gap:var(--viking-space-2)}.viking-footer-badges-top,.footer-badges-top{display:flex;justify-content:center;margin-bottom:var(--viking-space-2)}.viking-footer-compliance-row,.footer-compliance-row{display:flex;justify-content:center;align-items:center}.viking-copyright-info,.copyright-info{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--viking-space-2);font-size:var(--viking-font-size);color:var(--viking-text-muted);text-align:center}.viking-copyright-info a,.copyright-info a{color:var(--viking-text-muted);text-decoration:none!important;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}.viking-copyright-info a:hover,.copyright-info a:hover{color:var(--viking-text);border-bottom-color:var(--viking-text)}.viking-usa-badge,.usa-badge{display:inline-flex;align-items:center;gap:var(--viking-space-1);padding:var(--viking-space-1) var(--viking-space-2);border-radius:var(--viking-radius-pill);background-color:transparent;border:1px solid var(--viking-border);cursor:pointer;transition:var(--viking-transition-colors);font-size:var(--viking-font-size);font-weight:500;color:var(--viking-text-muted)}.viking-usa-badge:focus-visible,.usa-badge:focus-visible{outline:var(--viking-ring-width, 2px) solid var(--viking-ring, var(--viking-ring));outline-offset:var(--viking-ring-offset, 2px)}.viking-usa-badge:hover,.usa-badge:hover{background-color:color-mix(in srgb,var(--viking-surface) 95%,var(--viking-accent) 5%);border-color:var(--viking-border-strong);color:var(--viking-text);box-shadow:var(--viking-shadow-sm)}.viking-usa-badge-icon,.usa-badge-icon{font-size:1.1em;line-height:1;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.viking-usa-badge:hover .viking-usa-badge-icon,.usa-badge:hover .usa-badge-icon{transform:scale(1.15) rotate(-5deg)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
5437
5617
|
}
|
|
5438
5618
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: VikingFooter, decorators: [{
|
|
5439
5619
|
type: Component,
|
|
@@ -5446,7 +5626,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
5446
5626
|
</section>
|
|
5447
5627
|
</div>
|
|
5448
5628
|
</footer>
|
|
5449
|
-
`, styles: [".viking-footer,.mega-footer{background-color:var(--viking-surface, var(--color-surface));border-top:1px solid var(--viking-border-strong, var(--border-layout));padding:calc(var(--viking-space-2) * 2) var(--viking-space-2);font-family:var(--viking-font-family);color:var(--viking-text-muted)}.viking-footer-content,.footer-content{max-width:var(--container-max-width, 1260px);margin:0 auto}.viking-footer-directory,.footer-directory{display:grid;grid-template-columns:1fr;gap:calc(var(--viking-space-2) * 1.75);padding-bottom:calc(var(--viking-space-2) * 2);border-bottom:1px solid var(--viking-border-strong, var(--border-layout))}@media(min-width:600px){.viking-footer-directory,.footer-directory{grid-template-columns:repeat(2,1fr)}}@media(min-width:900px){.viking-footer-directory,.footer-directory{grid-template-columns:repeat(4,1fr)}}.viking-footer-column-title,.footer-column-title{font-size:var(--viking-font-size);font-weight:700;color:var(--viking-text);margin:0 0 var(--viking-space-2);letter-spacing:.05em}.viking-footer-list,.footer-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--viking-space-1)}.viking-footer-list a,.footer-list a{font-size:var(--viking-font-size);color:var(--viking-text-muted);text-decoration:none!important;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}.viking-footer-list a:hover,.footer-list a:hover{color:var(--viking-text);border-bottom-color:var(--viking-text)}.viking-footer-bottom,.footer-bottom{padding-top:var(--viking-space-2);display:flex;flex-direction:column;gap:var(--viking-space-2)}.viking-footer-badges-top,.footer-badges-top{display:flex;justify-content:center;margin-bottom:var(--viking-space-2)}.viking-footer-compliance-row,.footer-compliance-row{display:flex;justify-content:center;align-items:center}.viking-copyright-info,.copyright-info{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--viking-space-2);font-size:var(--viking-font-size);color:var(--viking-text-muted);text-align:center}.viking-copyright-info a,.copyright-info a{color:var(--viking-text-muted);text-decoration:none!important;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}.viking-copyright-info a:hover,.copyright-info a:hover{color:var(--viking-text);border-bottom-color:var(--viking-text)}.viking-usa-badge,.usa-badge{display:inline-flex;align-items:center;gap:var(--viking-space-1);padding:var(--viking-space-1) var(--viking-space-2);border-radius:var(--viking-radius-pill);background-color:transparent;border:1px solid var(--viking-border);cursor:
|
|
5629
|
+
`, styles: [".viking-footer,.mega-footer{background-color:var(--viking-surface, var(--color-surface));border-top:1px solid var(--viking-border-strong, var(--border-layout));padding:calc(var(--viking-space-2) * 2) var(--viking-space-2);font-family:var(--viking-font-family);color:var(--viking-text-muted)}.viking-footer-content,.footer-content{max-width:var(--container-max-width, 1260px);margin:0 auto}.viking-footer-directory,.footer-directory{display:grid;grid-template-columns:1fr;gap:calc(var(--viking-space-2) * 1.75);padding-bottom:calc(var(--viking-space-2) * 2);border-bottom:1px solid var(--viking-border-strong, var(--border-layout))}@media(min-width:600px){.viking-footer-directory,.footer-directory{grid-template-columns:repeat(2,1fr)}}@media(min-width:900px){.viking-footer-directory,.footer-directory{grid-template-columns:repeat(4,1fr)}}.viking-footer-column-title,.footer-column-title{font-size:var(--viking-font-size);font-weight:700;color:var(--viking-text);margin:0 0 var(--viking-space-2);letter-spacing:.05em}.viking-footer-list,.footer-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--viking-space-1)}.viking-footer-list a,.footer-list a{font-size:var(--viking-font-size);color:var(--viking-text-muted);text-decoration:none!important;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}.viking-footer-list a:hover,.footer-list a:hover{color:var(--viking-text);border-bottom-color:var(--viking-text)}.viking-footer-bottom,.footer-bottom{padding-top:var(--viking-space-2);display:flex;flex-direction:column;gap:var(--viking-space-2)}.viking-footer-badges-top,.footer-badges-top{display:flex;justify-content:center;margin-bottom:var(--viking-space-2)}.viking-footer-compliance-row,.footer-compliance-row{display:flex;justify-content:center;align-items:center}.viking-copyright-info,.copyright-info{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--viking-space-2);font-size:var(--viking-font-size);color:var(--viking-text-muted);text-align:center}.viking-copyright-info a,.copyright-info a{color:var(--viking-text-muted);text-decoration:none!important;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}.viking-copyright-info a:hover,.copyright-info a:hover{color:var(--viking-text);border-bottom-color:var(--viking-text)}.viking-usa-badge,.usa-badge{display:inline-flex;align-items:center;gap:var(--viking-space-1);padding:var(--viking-space-1) var(--viking-space-2);border-radius:var(--viking-radius-pill);background-color:transparent;border:1px solid var(--viking-border);cursor:pointer;transition:var(--viking-transition-colors);font-size:var(--viking-font-size);font-weight:500;color:var(--viking-text-muted)}.viking-usa-badge:focus-visible,.usa-badge:focus-visible{outline:var(--viking-ring-width, 2px) solid var(--viking-ring, var(--viking-ring));outline-offset:var(--viking-ring-offset, 2px)}.viking-usa-badge:hover,.usa-badge:hover{background-color:color-mix(in srgb,var(--viking-surface) 95%,var(--viking-accent) 5%);border-color:var(--viking-border-strong);color:var(--viking-text);box-shadow:var(--viking-shadow-sm)}.viking-usa-badge-icon,.usa-badge-icon{font-size:1.1em;line-height:1;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.viking-usa-badge:hover .viking-usa-badge-icon,.usa-badge:hover .usa-badge-icon{transform:scale(1.15) rotate(-5deg)}\n"] }]
|
|
5450
5630
|
}] });
|
|
5451
5631
|
|
|
5452
5632
|
/**
|
|
@@ -5522,6 +5702,10 @@ class VikingSiteFooter {
|
|
|
5522
5702
|
class="usa-badge viking-usa-badge"
|
|
5523
5703
|
id="usa-badge"
|
|
5524
5704
|
(mouseenter)="usaBadgeHover.emit($event)"
|
|
5705
|
+
(focusin)="usaBadgeHover.emit($event)"
|
|
5706
|
+
(click)="usaBadgeHover.emit($event)"
|
|
5707
|
+
role="button"
|
|
5708
|
+
tabindex="0"
|
|
5525
5709
|
>
|
|
5526
5710
|
<span
|
|
5527
5711
|
class="usa-badge-icon viking-usa-badge-icon"
|
|
@@ -5602,6 +5786,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
5602
5786
|
class="usa-badge viking-usa-badge"
|
|
5603
5787
|
id="usa-badge"
|
|
5604
5788
|
(mouseenter)="usaBadgeHover.emit($event)"
|
|
5789
|
+
(focusin)="usaBadgeHover.emit($event)"
|
|
5790
|
+
(click)="usaBadgeHover.emit($event)"
|
|
5791
|
+
role="button"
|
|
5792
|
+
tabindex="0"
|
|
5605
5793
|
>
|
|
5606
5794
|
<span
|
|
5607
5795
|
class="usa-badge-icon viking-usa-badge-icon"
|
|
@@ -6730,7 +6918,7 @@ class VikingCard {
|
|
|
6730
6918
|
} @else {
|
|
6731
6919
|
<ng-content />
|
|
6732
6920
|
}
|
|
6733
|
-
`, isInline: true, styles: [":host{display:block;background:var(--viking-surface-recipe, var(--viking-surface));border:1px solid var(--viking-border);border-radius:var(--viking-radius-lg);box-shadow:var(--viking-shadow-sm);padding:var(--viking-card-padding, var(--viking-space-3));color:var(--viking-text);transition:var(--viking-transition-interactive);position:relative;overflow:hidden;min-width:0}:host(.viking-card-headerless) .viking-card-header,:host(.viking-card-headerless) viking-card-header{display:none}:host:before{content:\"\";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-200) var(--viking-surface-hairline-strength, 22%),transparent),transparent);pointer-events:none}:host(.viking-card-interactive){cursor:pointer}:host(.viking-card-interactive):hover{border-color:var(--viking-accent-strong);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}:host(.viking-card-interactive):active{transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-
|
|
6921
|
+
`, isInline: true, styles: [":host{display:block;background:var(--viking-surface-recipe, var(--viking-surface));border:1px solid var(--viking-border);border-radius:var(--viking-radius-lg);box-shadow:var(--viking-shadow-sm),inset 0 1px color-mix(in srgb,var(--viking-white-pure) 6%,transparent);padding:var(--viking-card-padding, var(--viking-space-3));color:var(--viking-text);transition:var(--viking-transition-interactive);position:relative;isolation:isolate;overflow:hidden;min-width:0;background-clip:padding-box}:host(.viking-card-headerless) .viking-card-header,:host(.viking-card-headerless) viking-card-header{display:none}:host:before{content:\"\";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-200) var(--viking-surface-hairline-strength, 22%),transparent),transparent);pointer-events:none}:host:after{content:\"\";position:absolute;inset:0 0 auto;width:1px;height:28px;background:linear-gradient(180deg,color-mix(in srgb,var(--viking-metallic-100) 22%,transparent),transparent);pointer-events:none}:host(.viking-card-interactive){cursor:pointer}:host(.viking-card-interactive):hover{border-color:var(--viking-accent-strong);box-shadow:var(--viking-shadow-hover),inset 0 1px color-mix(in srgb,var(--viking-white-pure) 6%,transparent);transform:translateY(var(--viking-state-hover-lift))}:host(.viking-card-interactive):active{transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 24%,transparent),var(--viking-shadow-sm)}:host(.viking-card-interactive):focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset)}:host(.viking-card-loading){pointer-events:none}:host(.viking-card-compact){padding:var(--viking-card-padding-compact, var(--viking-space-2))}.viking-card-skeleton{display:flex;flex-direction:column;gap:var(--viking-space-1-5)}\n"], dependencies: [{ kind: "component", type: VikingSkeleton, selector: "viking-skeleton", inputs: ["shape", "width", "height"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6734
6922
|
}
|
|
6735
6923
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: VikingCard, decorators: [{
|
|
6736
6924
|
type: Component,
|
|
@@ -6753,25 +6941,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
|
|
|
6753
6941
|
} @else {
|
|
6754
6942
|
<ng-content />
|
|
6755
6943
|
}
|
|
6756
|
-
`, imports: [VikingSkeleton], styles: [":host{display:block;background:var(--viking-surface-recipe, var(--viking-surface));border:1px solid var(--viking-border);border-radius:var(--viking-radius-lg);box-shadow:var(--viking-shadow-sm);padding:var(--viking-card-padding, var(--viking-space-3));color:var(--viking-text);transition:var(--viking-transition-interactive);position:relative;overflow:hidden;min-width:0}:host(.viking-card-headerless) .viking-card-header,:host(.viking-card-headerless) viking-card-header{display:none}:host:before{content:\"\";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-200) var(--viking-surface-hairline-strength, 22%),transparent),transparent);pointer-events:none}:host(.viking-card-interactive){cursor:pointer}:host(.viking-card-interactive):hover{border-color:var(--viking-accent-strong);box-shadow:var(--viking-shadow-hover);transform:translateY(var(--viking-state-hover-lift))}:host(.viking-card-interactive):active{transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:var(--viking-shadow-
|
|
6944
|
+
`, imports: [VikingSkeleton], styles: [":host{display:block;background:var(--viking-surface-recipe, var(--viking-surface));border:1px solid var(--viking-border);border-radius:var(--viking-radius-lg);box-shadow:var(--viking-shadow-sm),inset 0 1px color-mix(in srgb,var(--viking-white-pure) 6%,transparent);padding:var(--viking-card-padding, var(--viking-space-3));color:var(--viking-text);transition:var(--viking-transition-interactive);position:relative;isolation:isolate;overflow:hidden;min-width:0;background-clip:padding-box}:host(.viking-card-headerless) .viking-card-header,:host(.viking-card-headerless) viking-card-header{display:none}:host:before{content:\"\";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--viking-metallic-200) var(--viking-surface-hairline-strength, 22%),transparent),transparent);pointer-events:none}:host:after{content:\"\";position:absolute;inset:0 0 auto;width:1px;height:28px;background:linear-gradient(180deg,color-mix(in srgb,var(--viking-metallic-100) 22%,transparent),transparent);pointer-events:none}:host(.viking-card-interactive){cursor:pointer}:host(.viking-card-interactive):hover{border-color:var(--viking-accent-strong);box-shadow:var(--viking-shadow-hover),inset 0 1px color-mix(in srgb,var(--viking-white-pure) 6%,transparent);transform:translateY(var(--viking-state-hover-lift))}:host(.viking-card-interactive):active{transform:translateY(0) scale(var(--viking-state-active-scale));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--viking-black) 24%,transparent),var(--viking-shadow-sm)}:host(.viking-card-interactive):focus-visible{outline:var(--viking-ring-width) solid var(--viking-ring);outline-offset:var(--viking-ring-offset)}:host(.viking-card-loading){pointer-events:none}:host(.viking-card-compact){padding:var(--viking-card-padding-compact, var(--viking-space-2))}.viking-card-skeleton{display:flex;flex-direction:column;gap:var(--viking-space-1-5)}\n"] }]
|
|
6757
6945
|
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { interactive: [{ type: i0.Input, args: [{ isSignal: true, alias: "interactive", required: false }] }], loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], compact: [{ type: i0.Input, args: [{ isSignal: true, alias: "compact", required: false }] }] } });
|
|
6758
6946
|
/** Header row for viking-card. */
|
|
6759
6947
|
class VikingCardHeader {
|
|
6760
6948
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: VikingCardHeader, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6761
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.5", type: VikingCardHeader, isStandalone: true, selector: "viking-card-header", ngImport: i0, template: `<ng-content />`, isInline: true, styles: [":host{display:flex;align-items:center;justify-content:space-between;gap:var(--viking-space-2);padding-bottom:var(--viking-space-2);margin-bottom:var(--viking-space-2)
|
|
6949
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.5", type: VikingCardHeader, isStandalone: true, selector: "viking-card-header", ngImport: i0, template: `<ng-content />`, isInline: true, styles: [":host{display:flex;align-items:center;justify-content:space-between;gap:var(--viking-space-2);padding-bottom:var(--viking-space-2);margin-bottom:var(--viking-space-2)}:host ::ng-deep>*{display:inline-flex;align-items:center}:host ::ng-deep viking-card-title{flex:1 1 auto;min-width:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6762
6950
|
}
|
|
6763
6951
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: VikingCardHeader, decorators: [{
|
|
6764
6952
|
type: Component,
|
|
6765
|
-
args: [{ selector: "viking-card-header", changeDetection: ChangeDetectionStrategy.OnPush, template: `<ng-content />`, styles: [":host{display:flex;align-items:center;justify-content:space-between;gap:var(--viking-space-2);padding-bottom:var(--viking-space-2);margin-bottom:var(--viking-space-2)
|
|
6953
|
+
args: [{ selector: "viking-card-header", changeDetection: ChangeDetectionStrategy.OnPush, template: `<ng-content />`, styles: [":host{display:flex;align-items:center;justify-content:space-between;gap:var(--viking-space-2);padding-bottom:var(--viking-space-2);margin-bottom:var(--viking-space-2)}:host ::ng-deep>*{display:inline-flex;align-items:center}:host ::ng-deep viking-card-title{flex:1 1 auto;min-width:0}\n"] }]
|
|
6766
6954
|
}] });
|
|
6767
6955
|
/** Footer row for viking-card. */
|
|
6768
6956
|
class VikingCardFooter {
|
|
6769
6957
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: VikingCardFooter, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6770
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.5", type: VikingCardFooter, isStandalone: true, selector: "viking-card-footer", ngImport: i0, template: `<ng-content />`, isInline: true, styles: [":host{display:flex;align-items:center;gap:var(--viking-space-2);padding-top:var(--viking-space-2);margin-top:var(--viking-space-2)
|
|
6958
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.5", type: VikingCardFooter, isStandalone: true, selector: "viking-card-footer", ngImport: i0, template: `<ng-content />`, isInline: true, styles: [":host{display:flex;align-items:center;gap:var(--viking-space-2);padding-top:var(--viking-space-2);margin-top:var(--viking-space-2)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
6771
6959
|
}
|
|
6772
6960
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: VikingCardFooter, decorators: [{
|
|
6773
6961
|
type: Component,
|
|
6774
|
-
args: [{ selector: "viking-card-footer", changeDetection: ChangeDetectionStrategy.OnPush, template: `<ng-content />`, styles: [":host{display:flex;align-items:center;gap:var(--viking-space-2);padding-top:var(--viking-space-2);margin-top:var(--viking-space-2)
|
|
6962
|
+
args: [{ selector: "viking-card-footer", changeDetection: ChangeDetectionStrategy.OnPush, template: `<ng-content />`, styles: [":host{display:flex;align-items:center;gap:var(--viking-space-2);padding-top:var(--viking-space-2);margin-top:var(--viking-space-2)}\n"] }]
|
|
6775
6963
|
}] });
|
|
6776
6964
|
|
|
6777
6965
|
/**
|