/* 導入 Leaflet 自定義樣式 - 必須在所有其他規則之前 */
/* Leaflet 地圖自定義樣式 */
/* 用戶位置標記動畫 */
@keyframes pulse {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.1);
    opacity: 0.7;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
.user-location-marker {
  animation: pulse 2s infinite;
}
/* 工匠標記樣式 */
.custom-craftsman-marker {
  transition: all 0.2s ease;
}
.custom-craftsman-marker:hover {
  transform: scale(1.1);
  z-index: 1000;
}
/* Leaflet 彈窗樣式優化 */
.leaflet-popup-content-wrapper {
  border-radius: 12px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
  border: none;
}
.leaflet-popup-content {
  margin: 0;
  padding: 0;
  border-radius: 12px;
  overflow: hidden;
}
.leaflet-popup-tip {
  background: white;
  border: none;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
/* 深色模式下的彈窗樣式 */
.dark .leaflet-popup-content-wrapper {
  background: #374151;
  color: white;
}
.dark .leaflet-popup-tip {
  background: #374151;
}
/* 地圖控制按鈕樣式 */
.leaflet-control-zoom a {
  border-radius: 8px;
  transition: all 0.2s ease;
}
.leaflet-control-zoom a:hover {
  background-color: #3b82f6;
  color: white;
}
/* 響應式地圖容器 */
.leaflet-container {
  font-family: 'Inter', sans-serif;
}
/* 移動端優化 */
@media (max-width: 768px) {
  .leaflet-popup-content-wrapper {
    max-width: 280px;
  }
  
  .custom-craftsman-marker {
    transform: scale(0.9);
  }
  
  .leaflet-control-zoom {
    margin-right: 10px;
    margin-bottom: 10px;
  }
}
/* 地圖載入動畫 */
.leaflet-container.leaflet-touch-zoom {
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1);
}
/* 標記集群樣式 */
.marker-cluster-small {
  background-color: rgba(59, 130, 246, 0.6);
}
.marker-cluster-small div {
  background-color: rgba(59, 130, 246, 0.8);
}
.marker-cluster-medium {
  background-color: rgba(245, 158, 11, 0.6);
}
.marker-cluster-medium div {
  background-color: rgba(245, 158, 11, 0.8);
}
.marker-cluster-large {
  background-color: rgba(239, 68, 68, 0.6);
}
.marker-cluster-large div {
  background-color: rgba(239, 68, 68, 0.8);
}
/* 自定義地圖圖層控制 */
.leaflet-control-layers {
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
/* 地圖屬性文字樣式 */
.leaflet-control-attribution {
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(10px);
  border-radius: 8px;
  padding: 4px 8px;
  font-size: 11px;
}
.dark .leaflet-control-attribution {
  background: rgba(0, 0, 0, 0.6);
  color: white;
}
/* 地圖全螢幕按鈕 */
.leaflet-control-fullscreen a {
  background-image: none;
  background-color: white;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
}
.leaflet-control-fullscreen a:before {
  content: "⛶";
}
.leaflet-fullscreen-on .leaflet-control-fullscreen a:before {
  content: "⛷";
}
/* 地圖搜索框樣式 */
.leaflet-control-search {
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.leaflet-control-search .search-input {
  border: none;
  padding: 12px 16px;
  font-size: 14px;
  font-family: 'Inter', sans-serif;
}
/* 路線規劃樣式 */
.leaflet-routing-container {
  background: white;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}
.dark .leaflet-routing-container {
  background: #374151;
  color: white;
}
/* 地圖載入指示器 */
.leaflet-loading {
  position: relative;
}
.leaflet-loading:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 40px;
  height: 40px;
  margin: -20px 0 0 -20px;
  border: 4px solid #f3f3f3;
  border-top: 4px solid #3b82f6;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  z-index: 1000;
}
@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
/* 地圖工具提示 */
.leaflet-tooltip {
  background: rgba(0, 0, 0, 0.8);
  color: white;
  border: none;
  border-radius: 6px;
  padding: 6px 10px;
  font-size: 12px;
  font-family: 'Inter', sans-serif;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}
.leaflet-tooltip-top:before {
  border-top-color: rgba(0, 0, 0, 0.8);
}
.leaflet-tooltip-bottom:before {
  border-bottom-color: rgba(0, 0, 0, 0.8);
}
.leaflet-tooltip-left:before {
  border-left-color: rgba(0, 0, 0, 0.8);
}
.leaflet-tooltip-right:before {
  border-right-color: rgba(0, 0, 0, 0.8);
}
*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(0 68 255 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}
::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(0 68 255 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}
/* ! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com */
/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/
*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #e5e7eb; /* 2 */
}
::before,
::after {
  --tw-content: '';
}
/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/
html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: Inter, ui-sans-serif, system-ui, sans-serif; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}
/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/
body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}
/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/
hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}
/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}
/*
Remove the default font size and weight for headings.
*/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}
/*
Reset links to optimize for opt-in styling instead of opt-out.
*/
a {
  color: inherit;
  text-decoration: inherit;
}
/*
Add the correct font weight in Edge and Safari.
*/
b,
strong {
  font-weight: bolder;
}
/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}
/*
Add the correct font size in all browsers.
*/
small {
  font-size: 80%;
}
/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/
table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}
/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  letter-spacing: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}
/*
Remove the inheritance of text transform in Edge and Firefox.
*/
button,
select {
  text-transform: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/
button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}
/*
Use the modern Firefox focus style for all focusable elements.
*/
:-moz-focusring {
  outline: auto;
}
/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/
:-moz-ui-invalid {
  box-shadow: none;
}
/*
Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
  vertical-align: baseline;
}
/*
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}
/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/
[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}
/*
Remove the inner padding in Chrome and Safari on macOS.
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}
/*
Add the correct display in Chrome and Safari.
*/
summary {
  display: list-item;
}
/*
Removes the default spacing and border for appropriate elements.
*/
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}
fieldset {
  margin: 0;
  padding: 0;
}
legend {
  padding: 0;
}
ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
/*
Reset default styling for dialogs.
*/
dialog {
  padding: 0;
}
/*
Prevent resizing textareas horizontally by default.
*/
textarea {
  resize: vertical;
}
/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/
input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
/*
Set the default cursor for buttons.
*/
button,
[role="button"] {
  cursor: pointer;
}
/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}
/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}
/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/
img,
video {
  max-width: 100%;
  height: auto;
}
/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}
:root {
    --color-primary: 51 102 255; /* #3366FF */
    --color-secondary: 0 184 169; /* #00B8A9 */
    --color-accent: 255 107 53; /* #FF6B35 */
    /* 手機底欄 + 系統手勢列（Android WebView 常 env=0，需 min fallback） */
    --fixnow-bottom-nav-h: 4rem;
    --fixnow-bottom-inset: env(safe-area-inset-bottom, 0px);
  }
@supports (padding: max(0px)) {
    :root {
      --fixnow-bottom-inset: max(12px, env(safe-area-inset-bottom, 0px));
    }
  }
html.native-app {
    --fixnow-bottom-nav-h: 4.25rem;
  }
@supports (padding: max(0px)) {
    html.native-app {
      --fixnow-bottom-inset: max(24px, env(safe-area-inset-bottom, 0px));
    }
  }
body {
  font-family: Inter, ui-sans-serif, system-ui, sans-serif;
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
}
h1, h2, h3, h4, h5, h6 {
  font-weight: 500;
  line-height: 1.25;
}
.container {
  width: 100%;
}
@media (min-width: 640px) {
  .container {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .container {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .container {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .container {
    max-width: 1536px;
  }
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
.pointer-events-none {
  pointer-events: none;
}
.visible {
  visibility: visible;
}
.invisible {
  visibility: hidden;
}
.collapse {
  visibility: collapse;
}
.static {
  position: static;
}
.fixed {
  position: fixed;
}
.absolute {
  position: absolute;
}
.relative {
  position: relative;
}
.sticky {
  position: sticky;
}
.inset-0 {
  inset: 0px;
}
.inset-6 {
  inset: 1.5rem;
}
.inset-x-0 {
  left: 0px;
  right: 0px;
}
.inset-y-0 {
  top: 0px;
  bottom: 0px;
}
.-bottom-0\.5 {
  bottom: -0.125rem;
}
.-bottom-1 {
  bottom: -0.25rem;
}
.-bottom-10 {
  bottom: -2.5rem;
}
.-right-0\.5 {
  right: -0.125rem;
}
.-right-1 {
  right: -0.25rem;
}
.-right-2 {
  right: -0.5rem;
}
.-right-8 {
  right: -2rem;
}
.-top-1 {
  top: -0.25rem;
}
.-top-2 {
  top: -0.5rem;
}
.-top-2\.5 {
  top: -0.625rem;
}
.-top-3 {
  top: -0.75rem;
}
.-top-8 {
  top: -2rem;
}
.bottom-0 {
  bottom: 0px;
}
.bottom-2 {
  bottom: 0.5rem;
}
.bottom-20 {
  bottom: 5rem;
}
.bottom-24 {
  bottom: 6rem;
}
.bottom-32 {
  bottom: 8rem;
}
.bottom-4 {
  bottom: 1rem;
}
.bottom-6 {
  bottom: 1.5rem;
}
.bottom-8 {
  bottom: 2rem;
}
.bottom-full {
  bottom: 100%;
}
.left-0 {
  left: 0px;
}
.left-0\.5 {
  left: 0.125rem;
}
.left-1\/2 {
  left: 50%;
}
.left-2 {
  left: 0.5rem;
}
.left-3 {
  left: 0.75rem;
}
.left-3\.5 {
  left: 0.875rem;
}
.left-4 {
  left: 1rem;
}
.left-5 {
  left: 1.25rem;
}
.left-6 {
  left: 1.5rem;
}
.left-\[1\.375rem\] {
  left: 1.375rem;
}
.right-0 {
  right: 0px;
}
.right-1 {
  right: 0.25rem;
}
.right-10 {
  right: 2.5rem;
}
.right-2 {
  right: 0.5rem;
}
.right-2\.5 {
  right: 0.625rem;
}
.right-3 {
  right: 0.75rem;
}
.right-4 {
  right: 1rem;
}
.right-6 {
  right: 1.5rem;
}
.right-8 {
  right: 2rem;
}
.top-0 {
  top: 0px;
}
.top-0\.5 {
  top: 0.125rem;
}
.top-1 {
  top: 0.25rem;
}
.top-1\/2 {
  top: 50%;
}
.top-10 {
  top: 2.5rem;
}
.top-12 {
  top: 3rem;
}
.top-16 {
  top: 4rem;
}
.top-2 {
  top: 0.5rem;
}
.top-2\.5 {
  top: 0.625rem;
}
.top-20 {
  top: 5rem;
}
.top-28 {
  top: 7rem;
}
.top-3 {
  top: 0.75rem;
}
.top-32 {
  top: 8rem;
}
.top-4 {
  top: 1rem;
}
.top-5 {
  top: 1.25rem;
}
.top-6 {
  top: 1.5rem;
}
.top-8 {
  top: 2rem;
}
.top-full {
  top: 100%;
}
.z-10 {
  z-index: 10;
}
.z-20 {
  z-index: 20;
}
.z-30 {
  z-index: 30;
}
.z-40 {
  z-index: 40;
}
.z-50 {
  z-index: 50;
}
.z-\[10000\] {
  z-index: 10000;
}
.z-\[100\] {
  z-index: 100;
}
.z-\[110\] {
  z-index: 110;
}
.z-\[120\] {
  z-index: 120;
}
.z-\[121\] {
  z-index: 121;
}
.z-\[1\] {
  z-index: 1;
}
.z-\[200\] {
  z-index: 200;
}
.z-\[210\] {
  z-index: 210;
}
.z-\[300\] {
  z-index: 300;
}
.z-\[50\] {
  z-index: 50;
}
.z-\[60\] {
  z-index: 60;
}
.z-\[70\] {
  z-index: 70;
}
.z-\[80\] {
  z-index: 80;
}
.z-\[90\] {
  z-index: 90;
}
.z-\[9999\] {
  z-index: 9999;
}
.col-span-1 {
  grid-column: span 1 / span 1;
}
.col-span-2 {
  grid-column: span 2 / span 2;
}
.col-span-full {
  grid-column: 1 / -1;
}
.-mx-1\.5 {
  margin-left: -0.375rem;
  margin-right: -0.375rem;
}
.-mx-4 {
  margin-left: -1rem;
  margin-right: -1rem;
}
.-my-1\.5 {
  margin-top: -0.375rem;
  margin-bottom: -0.375rem;
}
.mx-0\.5 {
  margin-left: 0.125rem;
  margin-right: 0.125rem;
}
.mx-1 {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}
.mx-2 {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}
.mx-4 {
  margin-left: 1rem;
  margin-right: 1rem;
}
.mx-6 {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.my-3 {
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}
.my-4 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.my-5 {
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}
.my-6 {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
.-ml-1 {
  margin-left: -0.25rem;
}
.-mt-2 {
  margin-top: -0.5rem;
}
.mb-0 {
  margin-bottom: 0px;
}
.mb-0\.5 {
  margin-bottom: 0.125rem;
}
.mb-1 {
  margin-bottom: 0.25rem;
}
.mb-1\.5 {
  margin-bottom: 0.375rem;
}
.mb-10 {
  margin-bottom: 2.5rem;
}
.mb-12 {
  margin-bottom: 3rem;
}
.mb-16 {
  margin-bottom: 4rem;
}
.mb-2 {
  margin-bottom: 0.5rem;
}
.mb-3 {
  margin-bottom: 0.75rem;
}
.mb-4 {
  margin-bottom: 1rem;
}
.mb-5 {
  margin-bottom: 1.25rem;
}
.mb-6 {
  margin-bottom: 1.5rem;
}
.mb-8 {
  margin-bottom: 2rem;
}
.ml-0 {
  margin-left: 0px;
}
.ml-0\.5 {
  margin-left: 0.125rem;
}
.ml-1 {
  margin-left: 0.25rem;
}
.ml-1\.5 {
  margin-left: 0.375rem;
}
.ml-2 {
  margin-left: 0.5rem;
}
.ml-3 {
  margin-left: 0.75rem;
}
.ml-4 {
  margin-left: 1rem;
}
.ml-6 {
  margin-left: 1.5rem;
}
.ml-8 {
  margin-left: 2rem;
}
.ml-auto {
  margin-left: auto;
}
.mr-0\.5 {
  margin-right: 0.125rem;
}
.mr-1 {
  margin-right: 0.25rem;
}
.mr-1\.5 {
  margin-right: 0.375rem;
}
.mr-2 {
  margin-right: 0.5rem;
}
.mr-3 {
  margin-right: 0.75rem;
}
.mr-4 {
  margin-right: 1rem;
}
.mt-0\.5 {
  margin-top: 0.125rem;
}
.mt-1 {
  margin-top: 0.25rem;
}
.mt-1\.5 {
  margin-top: 0.375rem;
}
.mt-10 {
  margin-top: 2.5rem;
}
.mt-12 {
  margin-top: 3rem;
}
.mt-14 {
  margin-top: 3.5rem;
}
.mt-2 {
  margin-top: 0.5rem;
}
.mt-3 {
  margin-top: 0.75rem;
}
.mt-4 {
  margin-top: 1rem;
}
.mt-5 {
  margin-top: 1.25rem;
}
.mt-6 {
  margin-top: 1.5rem;
}
.mt-8 {
  margin-top: 2rem;
}
.line-clamp-1 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}
.line-clamp-2 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.line-clamp-3 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.line-clamp-4 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}
.block {
  display: block;
}
.inline-block {
  display: inline-block;
}
.inline {
  display: inline;
}
.flex {
  display: flex;
}
.inline-flex {
  display: inline-flex;
}
.table {
  display: table;
}
.grid {
  display: grid;
}
.hidden {
  display: none;
}
.aspect-square {
  aspect-ratio: 1 / 1;
}
.h-0\.5 {
  height: 0.125rem;
}
.h-1 {
  height: 0.25rem;
}
.h-1\.5 {
  height: 0.375rem;
}
.h-1\/2 {
  height: 50%;
}
.h-10 {
  height: 2.5rem;
}
.h-11 {
  height: 2.75rem;
}
.h-12 {
  height: 3rem;
}
.h-14 {
  height: 3.5rem;
}
.h-16 {
  height: 4rem;
}
.h-2 {
  height: 0.5rem;
}
.h-2\.5 {
  height: 0.625rem;
}
.h-20 {
  height: 5rem;
}
.h-24 {
  height: 6rem;
}
.h-28 {
  height: 7rem;
}
.h-3 {
  height: 0.75rem;
}
.h-3\.5 {
  height: 0.875rem;
}
.h-32 {
  height: 8rem;
}
.h-36 {
  height: 9rem;
}
.h-4 {
  height: 1rem;
}
.h-40 {
  height: 10rem;
}
.h-48 {
  height: 12rem;
}
.h-5 {
  height: 1.25rem;
}
.h-56 {
  height: 14rem;
}
.h-6 {
  height: 1.5rem;
}
.h-64 {
  height: 16rem;
}
.h-7 {
  height: 1.75rem;
}
.h-72 {
  height: 18rem;
}
.h-8 {
  height: 2rem;
}
.h-9 {
  height: 2.25rem;
}
.h-96 {
  height: 24rem;
}
.h-\[1\.125rem\] {
  height: 1.125rem;
}
.h-\[18px\] {
  height: 18px;
}
.h-\[22px\] {
  height: 22px;
}
.h-\[250px\] {
  height: 250px;
}
.h-\[260px\] {
  height: 260px;
}
.h-\[300px\] {
  height: 300px;
}
.h-\[4\.75rem\] {
  height: 4.75rem;
}
.h-\[400px\] {
  height: 400px;
}
.h-\[52px\] {
  height: 52px;
}
.h-\[55vh\] {
  height: 55vh;
}
.h-\[600px\] {
  height: 600px;
}
.h-\[calc\(100\%-52px\)\] {
  height: calc(100% - 52px);
}
.h-auto {
  height: auto;
}
.h-full {
  height: 100%;
}
.h-px {
  height: 1px;
}
.h-screen {
  height: 100vh;
}
.max-h-32 {
  max-height: 8rem;
}
.max-h-40 {
  max-height: 10rem;
}
.max-h-44 {
  max-height: 11rem;
}
.max-h-48 {
  max-height: 12rem;
}
.max-h-56 {
  max-height: 14rem;
}
.max-h-60 {
  max-height: 15rem;
}
.max-h-64 {
  max-height: 16rem;
}
.max-h-72 {
  max-height: 18rem;
}
.max-h-80 {
  max-height: 20rem;
}
.max-h-96 {
  max-height: 24rem;
}
.max-h-\[520px\] {
  max-height: 520px;
}
.max-h-\[600px\] {
  max-height: 600px;
}
.max-h-\[60vh\] {
  max-height: 60vh;
}
.max-h-\[75vh\] {
  max-height: 75vh;
}
.max-h-\[80dvh\] {
  max-height: 80dvh;
}
.max-h-\[80vh\] {
  max-height: 80vh;
}
.max-h-\[85vh\] {
  max-height: 85vh;
}
.max-h-\[90vh\] {
  max-height: 90vh;
}
.max-h-\[calc\(100dvh-1\.5rem\)\] {
  max-height: calc(100dvh - 1.5rem);
}
.max-h-\[calc\(85vh-200px\)\] {
  max-height: calc(85vh - 200px);
}
.max-h-\[min\(70vh\2c 560px\)\] {
  max-height: min(70vh,560px);
}
.max-h-\[min\(85vh\2c 640px\)\] {
  max-height: min(85vh,640px);
}
.max-h-full {
  max-height: 100%;
}
.min-h-0 {
  min-height: 0px;
}
.min-h-16 {
  min-height: 4rem;
}
.min-h-\[1\.25rem\] {
  min-height: 1.25rem;
}
.min-h-\[100dvh\] {
  min-height: 100dvh;
}
.min-h-\[120px\] {
  min-height: 120px;
}
.min-h-\[2rem\] {
  min-height: 2rem;
}
.min-h-\[40px\] {
  min-height: 40px;
}
.min-h-\[42px\] {
  min-height: 42px;
}
.min-h-\[44px\] {
  min-height: 44px;
}
.min-h-\[48px\] {
  min-height: 48px;
}
.min-h-\[80px\] {
  min-height: 80px;
}
.min-h-\[88px\] {
  min-height: 88px;
}
.min-h-dvh {
  min-height: 100dvh;
}
.min-h-full {
  min-height: 100%;
}
.min-h-screen {
  min-height: 100vh;
}
.w-1\/2 {
  width: 50%;
}
.w-1\/3 {
  width: 33.333333%;
}
.w-1\/4 {
  width: 25%;
}
.w-10 {
  width: 2.5rem;
}
.w-11 {
  width: 2.75rem;
}
.w-12 {
  width: 3rem;
}
.w-14 {
  width: 3.5rem;
}
.w-16 {
  width: 4rem;
}
.w-2 {
  width: 0.5rem;
}
.w-2\.5 {
  width: 0.625rem;
}
.w-2\/3 {
  width: 66.666667%;
}
.w-20 {
  width: 5rem;
}
.w-24 {
  width: 6rem;
}
.w-28 {
  width: 7rem;
}
.w-3 {
  width: 0.75rem;
}
.w-3\.5 {
  width: 0.875rem;
}
.w-3\/4 {
  width: 75%;
}
.w-32 {
  width: 8rem;
}
.w-4 {
  width: 1rem;
}
.w-40 {
  width: 10rem;
}
.w-48 {
  width: 12rem;
}
.w-5 {
  width: 1.25rem;
}
.w-5\/6 {
  width: 83.333333%;
}
.w-52 {
  width: 13rem;
}
.w-56 {
  width: 14rem;
}
.w-6 {
  width: 1.5rem;
}
.w-64 {
  width: 16rem;
}
.w-7 {
  width: 1.75rem;
}
.w-72 {
  width: 18rem;
}
.w-8 {
  width: 2rem;
}
.w-80 {
  width: 20rem;
}
.w-9 {
  width: 2.25rem;
}
.w-96 {
  width: 24rem;
}
.w-\[1\.125rem\] {
  width: 1.125rem;
}
.w-\[18px\] {
  width: 18px;
}
.w-\[22px\] {
  width: 22px;
}
.w-\[320px\] {
  width: 320px;
}
.w-\[52px\] {
  width: 52px;
}
.w-\[min\(100vw-1\.5rem\2c 20rem\)\] {
  width: min(100vw - 1.5rem,20rem);
}
.w-auto {
  width: auto;
}
.w-fit {
  width: -moz-fit-content;
  width: fit-content;
}
.w-full {
  width: 100%;
}
.w-px {
  width: 1px;
}
.min-w-0 {
  min-width: 0px;
}
.min-w-\[1\.25rem\] {
  min-width: 1.25rem;
}
.min-w-\[100px\] {
  min-width: 100px;
}
.min-w-\[10rem\] {
  min-width: 10rem;
}
.min-w-\[120px\] {
  min-width: 120px;
}
.min-w-\[140px\] {
  min-width: 140px;
}
.min-w-\[200px\] {
  min-width: 200px;
}
.min-w-\[220px\] {
  min-width: 220px;
}
.min-w-\[240px\] {
  min-width: 240px;
}
.min-w-\[280px\] {
  min-width: 280px;
}
.min-w-\[44px\] {
  min-width: 44px;
}
.min-w-\[48px\] {
  min-width: 48px;
}
.min-w-\[4ch\] {
  min-width: 4ch;
}
.min-w-\[50px\] {
  min-width: 50px;
}
.min-w-\[7rem\] {
  min-width: 7rem;
}
.min-w-\[80px\] {
  min-width: 80px;
}
.min-w-\[9rem\] {
  min-width: 9rem;
}
.min-w-full {
  min-width: 100%;
}
.max-w-2xl {
  max-width: 42rem;
}
.max-w-3xl {
  max-width: 48rem;
}
.max-w-4xl {
  max-width: 56rem;
}
.max-w-5xl {
  max-width: 64rem;
}
.max-w-6xl {
  max-width: 72rem;
}
.max-w-7xl {
  max-width: 80rem;
}
.max-w-\[100px\] {
  max-width: 100px;
}
.max-w-\[10rem\] {
  max-width: 10rem;
}
.max-w-\[120px\] {
  max-width: 120px;
}
.max-w-\[140px\] {
  max-width: 140px;
}
.max-w-\[14rem\] {
  max-width: 14rem;
}
.max-w-\[160px\] {
  max-width: 160px;
}
.max-w-\[16rem\] {
  max-width: 16rem;
}
.max-w-\[180px\] {
  max-width: 180px;
}
.max-w-\[200px\] {
  max-width: 200px;
}
.max-w-\[72px\] {
  max-width: 72px;
}
.max-w-\[8rem\] {
  max-width: 8rem;
}
.max-w-\[min\(320px\2c 42vw\)\] {
  max-width: min(320px,42vw);
}
.max-w-full {
  max-width: 100%;
}
.max-w-lg {
  max-width: 32rem;
}
.max-w-md {
  max-width: 28rem;
}
.max-w-none {
  max-width: none;
}
.max-w-sm {
  max-width: 24rem;
}
.max-w-xl {
  max-width: 36rem;
}
.max-w-xs {
  max-width: 20rem;
}
.flex-1 {
  flex: 1 1 0%;
}
.flex-shrink-0 {
  flex-shrink: 0;
}
.shrink-0 {
  flex-shrink: 0;
}
.flex-grow {
  flex-grow: 1;
}
.basis-\[min\(100\%\2c 12rem\)\] {
  flex-basis: min(100%,12rem);
}
.border-collapse {
  border-collapse: collapse;
}
.-translate-x-1\/2 {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-x-4 {
  --tw-translate-x: -1rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-0\.5 {
  --tw-translate-y: -0.125rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-1\/2 {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-translate-y-16 {
  --tw-translate-y: -4rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-1 {
  --tw-translate-x: 0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-16 {
  --tw-translate-x: 4rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-4 {
  --tw-translate-x: 1rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.translate-x-6 {
  --tw-translate-x: 1.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.-rotate-90 {
  --tw-rotate: -90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-180 {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-90 {
  --tw-rotate: 90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-\[-90deg\] {
  --tw-rotate: -90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.scale-105 {
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.scale-110 {
  --tw-scale-x: 1.1;
  --tw-scale-y: 1.1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.scale-\[0\.98\] {
  --tw-scale-x: 0.98;
  --tw-scale-y: 0.98;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@keyframes bounce {
  0%, 100% {
    transform: translateY(-25%);
    animation-timing-function: cubic-bezier(0.8,0,1,1);
  }
  50% {
    transform: none;
    animation-timing-function: cubic-bezier(0,0,0.2,1);
  }
}
.animate-bounce {
  animation: bounce 1s infinite;
}
@keyframes ping {
  75%, 100% {
    transform: scale(2);
    opacity: 0;
  }
}
.animate-ping {
  animation: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
}
@keyframes pulse {
  50% {
    opacity: .5;
  }
}
.animate-pulse {
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
.animate-spin {
  animation: spin 1s linear infinite;
}
.cursor-default {
  cursor: default;
}
.cursor-move {
  cursor: move;
}
.cursor-not-allowed {
  cursor: not-allowed;
}
.cursor-pointer {
  cursor: pointer;
}
.touch-none {
  touch-action: none;
}
.touch-manipulation {
  touch-action: manipulation;
}
.select-none {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.resize-none {
  resize: none;
}
.resize-y {
  resize: vertical;
}
.resize {
  resize: both;
}
.snap-x {
  scroll-snap-type: x var(--tw-scroll-snap-strictness);
}
.snap-mandatory {
  --tw-scroll-snap-strictness: mandatory;
}
.snap-start {
  scroll-snap-align: start;
}
.scroll-mt-24 {
  scroll-margin-top: 6rem;
}
.list-inside {
  list-style-position: inside;
}
.list-outside {
  list-style-position: outside;
}
.list-decimal {
  list-style-type: decimal;
}
.list-disc {
  list-style-type: disc;
}
.list-none {
  list-style-type: none;
}
.appearance-none {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.auto-rows-fr {
  grid-auto-rows: minmax(0, 1fr);
}
.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.grid-cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.grid-cols-5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.grid-cols-6 {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
.grid-cols-7 {
  grid-template-columns: repeat(7, minmax(0, 1fr));
}
.flex-col {
  flex-direction: column;
}
.flex-col-reverse {
  flex-direction: column-reverse;
}
.flex-wrap {
  flex-wrap: wrap;
}
.flex-nowrap {
  flex-wrap: nowrap;
}
.items-start {
  align-items: flex-start;
}
.items-end {
  align-items: flex-end;
}
.items-center {
  align-items: center;
}
.items-baseline {
  align-items: baseline;
}
.items-stretch {
  align-items: stretch;
}
.justify-start {
  justify-content: flex-start;
}
.justify-end {
  justify-content: flex-end;
}
.justify-center {
  justify-content: center;
}
.justify-between {
  justify-content: space-between;
}
.justify-around {
  justify-content: space-around;
}
.gap-0 {
  gap: 0px;
}
.gap-0\.5 {
  gap: 0.125rem;
}
.gap-1 {
  gap: 0.25rem;
}
.gap-1\.5 {
  gap: 0.375rem;
}
.gap-12 {
  gap: 3rem;
}
.gap-2 {
  gap: 0.5rem;
}
.gap-2\.5 {
  gap: 0.625rem;
}
.gap-3 {
  gap: 0.75rem;
}
.gap-4 {
  gap: 1rem;
}
.gap-5 {
  gap: 1.25rem;
}
.gap-6 {
  gap: 1.5rem;
}
.gap-8 {
  gap: 2rem;
}
.gap-x-2 {
  -moz-column-gap: 0.5rem;
       column-gap: 0.5rem;
}
.gap-x-4 {
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
.gap-x-6 {
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.gap-y-0\.5 {
  row-gap: 0.125rem;
}
.gap-y-1 {
  row-gap: 0.25rem;
}
.gap-y-3 {
  row-gap: 0.75rem;
}
.space-x-0\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(0.125rem * var(--tw-space-x-reverse));
  margin-left: calc(0.125rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-x-1 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(0.25rem * var(--tw-space-x-reverse));
  margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-x-1\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(0.375rem * var(--tw-space-x-reverse));
  margin-left: calc(0.375rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-x-16 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(4rem * var(--tw-space-x-reverse));
  margin-left: calc(4rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-x-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(0.5rem * var(--tw-space-x-reverse));
  margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-x-3 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(0.75rem * var(--tw-space-x-reverse));
  margin-left: calc(0.75rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-x-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(1rem * var(--tw-space-x-reverse));
  margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-x-6 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(1.5rem * var(--tw-space-x-reverse));
  margin-left: calc(1.5rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-x-8 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(2rem * var(--tw-space-x-reverse));
  margin-left: calc(2rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-y-0\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.125rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.125rem * var(--tw-space-y-reverse));
}
.space-y-1 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
}
.space-y-1\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));
}
.space-y-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
}
.space-y-2\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.625rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.625rem * var(--tw-space-y-reverse));
}
.space-y-3 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
}
.space-y-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}
.space-y-5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));
}
.space-y-6 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}
.space-y-8 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(2rem * var(--tw-space-y-reverse));
}
.divide-x > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-x-reverse: 0;
  border-right-width: calc(1px * var(--tw-divide-x-reverse));
  border-left-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
}
.divide-y > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-y-reverse: 0;
  border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
}
.divide-\[\#eef2f8\] > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-opacity: 1;
  border-color: rgb(238 242 248 / var(--tw-divide-opacity, 1));
}
.divide-gray-100 > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-opacity: 1;
  border-color: rgb(243 244 246 / var(--tw-divide-opacity, 1));
}
.divide-gray-200 > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-divide-opacity, 1));
}
.divide-slate-100 > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-opacity: 1;
  border-color: rgb(241 245 249 / var(--tw-divide-opacity, 1));
}
.divide-slate-200 > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-divide-opacity, 1));
}
.self-start {
  align-self: flex-start;
}
.self-center {
  align-self: center;
}
.overflow-auto {
  overflow: auto;
}
.overflow-hidden {
  overflow: hidden;
}
.overflow-visible {
  overflow: visible;
}
.overflow-x-auto {
  overflow-x: auto;
}
.overflow-y-auto {
  overflow-y: auto;
}
.overscroll-contain {
  overscroll-behavior: contain;
}
.truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.whitespace-nowrap {
  white-space: nowrap;
}
.whitespace-pre-line {
  white-space: pre-line;
}
.whitespace-pre-wrap {
  white-space: pre-wrap;
}
.break-words {
  overflow-wrap: break-word;
}
.break-all {
  word-break: break-all;
}
.rounded {
  border-radius: 0.25rem;
}
.rounded-2xl {
  border-radius: 1rem;
}
.rounded-3xl {
  border-radius: 1.5rem;
}
.rounded-\[1\.25rem\] {
  border-radius: 1.25rem;
}
.rounded-\[2rem\] {
  border-radius: 2rem;
}
.rounded-full {
  border-radius: 9999px;
}
.rounded-lg {
  border-radius: 0.5rem;
}
.rounded-md {
  border-radius: 0.375rem;
}
.rounded-xl {
  border-radius: 0.75rem;
}
.rounded-b-lg {
  border-bottom-right-radius: 0.5rem;
  border-bottom-left-radius: 0.5rem;
}
.rounded-l-lg {
  border-top-left-radius: 0.5rem;
  border-bottom-left-radius: 0.5rem;
}
.rounded-l-xl {
  border-top-left-radius: 0.75rem;
  border-bottom-left-radius: 0.75rem;
}
.rounded-r-lg {
  border-top-right-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}
.rounded-t-2xl {
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
}
.rounded-t-3xl {
  border-top-left-radius: 1.5rem;
  border-top-right-radius: 1.5rem;
}
.rounded-t-\[1\.5rem\] {
  border-top-left-radius: 1.5rem;
  border-top-right-radius: 1.5rem;
}
.rounded-t-lg {
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
}
.rounded-bl-md {
  border-bottom-left-radius: 0.375rem;
}
.rounded-br-md {
  border-bottom-right-radius: 0.375rem;
}
.border {
  border-width: 1px;
}
.border-0 {
  border-width: 0px;
}
.border-2 {
  border-width: 2px;
}
.border-4 {
  border-width: 4px;
}
.border-\[2\.5px\] {
  border-width: 2.5px;
}
.border-y {
  border-top-width: 1px;
  border-bottom-width: 1px;
}
.border-b {
  border-bottom-width: 1px;
}
.border-b-2 {
  border-bottom-width: 2px;
}
.border-l {
  border-left-width: 1px;
}
.border-l-2 {
  border-left-width: 2px;
}
.border-l-4 {
  border-left-width: 4px;
}
.border-r {
  border-right-width: 1px;
}
.border-t {
  border-top-width: 1px;
}
.border-t-2 {
  border-top-width: 2px;
}
.border-t-4 {
  border-top-width: 4px;
}
.border-dashed {
  border-style: dashed;
}
.border-none {
  border-style: none;
}
.border-\[\#1d3557\] {
  --tw-border-opacity: 1;
  border-color: rgb(29 53 87 / var(--tw-border-opacity, 1));
}
.border-\[\#1d3557\]\/20 {
  border-color: rgb(29 53 87 / 0.2);
}
.border-\[\#d4a017\] {
  --tw-border-opacity: 1;
  border-color: rgb(212 160 23 / var(--tw-border-opacity, 1));
}
.border-\[\#d9e1ee\] {
  --tw-border-opacity: 1;
  border-color: rgb(217 225 238 / var(--tw-border-opacity, 1));
}
.border-\[\#eef2f8\] {
  --tw-border-opacity: 1;
  border-color: rgb(238 242 248 / var(--tw-border-opacity, 1));
}
.border-\[\#f5c542\] {
  --tw-border-opacity: 1;
  border-color: rgb(245 197 66 / var(--tw-border-opacity, 1));
}
.border-amber-100 {
  --tw-border-opacity: 1;
  border-color: rgb(254 243 199 / var(--tw-border-opacity, 1));
}
.border-amber-200 {
  --tw-border-opacity: 1;
  border-color: rgb(253 230 138 / var(--tw-border-opacity, 1));
}
.border-amber-200\/90 {
  border-color: rgb(253 230 138 / 0.9);
}
.border-amber-300 {
  --tw-border-opacity: 1;
  border-color: rgb(252 211 77 / var(--tw-border-opacity, 1));
}
.border-amber-400 {
  --tw-border-opacity: 1;
  border-color: rgb(251 191 36 / var(--tw-border-opacity, 1));
}
.border-amber-500 {
  --tw-border-opacity: 1;
  border-color: rgb(245 158 11 / var(--tw-border-opacity, 1));
}
.border-amber-600 {
  --tw-border-opacity: 1;
  border-color: rgb(217 119 6 / var(--tw-border-opacity, 1));
}
.border-blue-100 {
  --tw-border-opacity: 1;
  border-color: rgb(204 220 255 / var(--tw-border-opacity, 1));
}
.border-blue-200 {
  --tw-border-opacity: 1;
  border-color: rgb(153 185 255 / var(--tw-border-opacity, 1));
}
.border-blue-300 {
  --tw-border-opacity: 1;
  border-color: rgb(102 149 255 / var(--tw-border-opacity, 1));
}
.border-blue-400 {
  --tw-border-opacity: 1;
  border-color: rgb(51 102 255 / var(--tw-border-opacity, 1));
}
.border-blue-400\/60 {
  border-color: rgb(51 102 255 / 0.6);
}
.border-blue-500 {
  --tw-border-opacity: 1;
  border-color: rgb(0 68 255 / var(--tw-border-opacity, 1));
}
.border-blue-600 {
  --tw-border-opacity: 1;
  border-color: rgb(0 51 204 / var(--tw-border-opacity, 1));
}
.border-current {
  border-color: currentColor;
}
.border-cyan-100 {
  --tw-border-opacity: 1;
  border-color: rgb(207 250 254 / var(--tw-border-opacity, 1));
}
.border-cyan-200 {
  --tw-border-opacity: 1;
  border-color: rgb(165 243 252 / var(--tw-border-opacity, 1));
}
.border-emerald-100 {
  --tw-border-opacity: 1;
  border-color: rgb(209 250 229 / var(--tw-border-opacity, 1));
}
.border-emerald-200 {
  --tw-border-opacity: 1;
  border-color: rgb(167 243 208 / var(--tw-border-opacity, 1));
}
.border-emerald-300 {
  --tw-border-opacity: 1;
  border-color: rgb(110 231 183 / var(--tw-border-opacity, 1));
}
.border-emerald-500 {
  --tw-border-opacity: 1;
  border-color: rgb(16 185 129 / var(--tw-border-opacity, 1));
}
.border-emerald-600 {
  --tw-border-opacity: 1;
  border-color: rgb(5 150 105 / var(--tw-border-opacity, 1));
}
.border-gray-100 {
  --tw-border-opacity: 1;
  border-color: rgb(243 244 246 / var(--tw-border-opacity, 1));
}
.border-gray-100\/80 {
  border-color: rgb(243 244 246 / 0.8);
}
.border-gray-200 {
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
}
.border-gray-200\/80 {
  border-color: rgb(229 231 235 / 0.8);
}
.border-gray-200\/90 {
  border-color: rgb(229 231 235 / 0.9);
}
.border-gray-300 {
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}
.border-gray-400 {
  --tw-border-opacity: 1;
  border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));
}
.border-gray-500 {
  --tw-border-opacity: 1;
  border-color: rgb(107 114 128 / var(--tw-border-opacity, 1));
}
.border-gray-600 {
  --tw-border-opacity: 1;
  border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));
}
.border-gray-700 {
  --tw-border-opacity: 1;
  border-color: rgb(55 65 81 / var(--tw-border-opacity, 1));
}
.border-gray-800 {
  --tw-border-opacity: 1;
  border-color: rgb(31 41 55 / var(--tw-border-opacity, 1));
}
.border-gray-900 {
  --tw-border-opacity: 1;
  border-color: rgb(17 24 39 / var(--tw-border-opacity, 1));
}
.border-green-100 {
  --tw-border-opacity: 1;
  border-color: rgb(220 252 231 / var(--tw-border-opacity, 1));
}
.border-green-200 {
  --tw-border-opacity: 1;
  border-color: rgb(187 247 208 / var(--tw-border-opacity, 1));
}
.border-green-300 {
  --tw-border-opacity: 1;
  border-color: rgb(134 239 172 / var(--tw-border-opacity, 1));
}
.border-green-400 {
  --tw-border-opacity: 1;
  border-color: rgb(74 222 128 / var(--tw-border-opacity, 1));
}
.border-green-500 {
  --tw-border-opacity: 1;
  border-color: rgb(34 197 94 / var(--tw-border-opacity, 1));
}
.border-green-600 {
  --tw-border-opacity: 1;
  border-color: rgb(22 163 74 / var(--tw-border-opacity, 1));
}
.border-green-600\/30 {
  border-color: rgb(22 163 74 / 0.3);
}
.border-indigo-100 {
  --tw-border-opacity: 1;
  border-color: rgb(224 231 255 / var(--tw-border-opacity, 1));
}
.border-indigo-200 {
  --tw-border-opacity: 1;
  border-color: rgb(199 210 254 / var(--tw-border-opacity, 1));
}
.border-indigo-300 {
  --tw-border-opacity: 1;
  border-color: rgb(165 180 252 / var(--tw-border-opacity, 1));
}
.border-orange-100 {
  --tw-border-opacity: 1;
  border-color: rgb(255 225 214 / var(--tw-border-opacity, 1));
}
.border-orange-200 {
  --tw-border-opacity: 1;
  border-color: rgb(255 195 173 / var(--tw-border-opacity, 1));
}
.border-orange-300 {
  --tw-border-opacity: 1;
  border-color: rgb(255 165 133 / var(--tw-border-opacity, 1));
}
.border-orange-400 {
  --tw-border-opacity: 1;
  border-color: rgb(255 135 92 / var(--tw-border-opacity, 1));
}
.border-orange-500 {
  --tw-border-opacity: 1;
  border-color: rgb(255 107 53 / var(--tw-border-opacity, 1));
}
.border-orange-600 {
  --tw-border-opacity: 1;
  border-color: rgb(204 84 41 / var(--tw-border-opacity, 1));
}
.border-orange-600\/30 {
  border-color: rgb(204 84 41 / 0.3);
}
.border-pink-100 {
  --tw-border-opacity: 1;
  border-color: rgb(252 231 243 / var(--tw-border-opacity, 1));
}
.border-purple-100 {
  --tw-border-opacity: 1;
  border-color: rgb(243 232 255 / var(--tw-border-opacity, 1));
}
.border-purple-200 {
  --tw-border-opacity: 1;
  border-color: rgb(233 213 255 / var(--tw-border-opacity, 1));
}
.border-purple-300 {
  --tw-border-opacity: 1;
  border-color: rgb(216 180 254 / var(--tw-border-opacity, 1));
}
.border-purple-500 {
  --tw-border-opacity: 1;
  border-color: rgb(168 85 247 / var(--tw-border-opacity, 1));
}
.border-purple-600 {
  --tw-border-opacity: 1;
  border-color: rgb(147 51 234 / var(--tw-border-opacity, 1));
}
.border-red-100 {
  --tw-border-opacity: 1;
  border-color: rgb(254 226 226 / var(--tw-border-opacity, 1));
}
.border-red-200 {
  --tw-border-opacity: 1;
  border-color: rgb(254 202 202 / var(--tw-border-opacity, 1));
}
.border-red-300 {
  --tw-border-opacity: 1;
  border-color: rgb(252 165 165 / var(--tw-border-opacity, 1));
}
.border-red-400 {
  --tw-border-opacity: 1;
  border-color: rgb(248 113 113 / var(--tw-border-opacity, 1));
}
.border-red-500 {
  --tw-border-opacity: 1;
  border-color: rgb(239 68 68 / var(--tw-border-opacity, 1));
}
.border-red-600 {
  --tw-border-opacity: 1;
  border-color: rgb(220 38 38 / var(--tw-border-opacity, 1));
}
.border-rose-100 {
  --tw-border-opacity: 1;
  border-color: rgb(255 228 230 / var(--tw-border-opacity, 1));
}
.border-rose-200 {
  --tw-border-opacity: 1;
  border-color: rgb(254 205 211 / var(--tw-border-opacity, 1));
}
.border-rose-300 {
  --tw-border-opacity: 1;
  border-color: rgb(253 164 175 / var(--tw-border-opacity, 1));
}
.border-rose-500 {
  --tw-border-opacity: 1;
  border-color: rgb(244 63 94 / var(--tw-border-opacity, 1));
}
.border-rose-600 {
  --tw-border-opacity: 1;
  border-color: rgb(225 29 72 / var(--tw-border-opacity, 1));
}
.border-sky-100 {
  --tw-border-opacity: 1;
  border-color: rgb(224 242 254 / var(--tw-border-opacity, 1));
}
.border-sky-200 {
  --tw-border-opacity: 1;
  border-color: rgb(186 230 253 / var(--tw-border-opacity, 1));
}
.border-slate-100 {
  --tw-border-opacity: 1;
  border-color: rgb(241 245 249 / var(--tw-border-opacity, 1));
}
.border-slate-200 {
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
}
.border-slate-200\/80 {
  border-color: rgb(226 232 240 / 0.8);
}
.border-slate-200\/90 {
  border-color: rgb(226 232 240 / 0.9);
}
.border-slate-300 {
  --tw-border-opacity: 1;
  border-color: rgb(203 213 225 / var(--tw-border-opacity, 1));
}
.border-teal-100 {
  --tw-border-opacity: 1;
  border-color: rgb(204 255 249 / var(--tw-border-opacity, 1));
}
.border-teal-200 {
  --tw-border-opacity: 1;
  border-color: rgb(153 255 243 / var(--tw-border-opacity, 1));
}
.border-transparent {
  border-color: transparent;
}
.border-violet-100 {
  --tw-border-opacity: 1;
  border-color: rgb(237 233 254 / var(--tw-border-opacity, 1));
}
.border-violet-200 {
  --tw-border-opacity: 1;
  border-color: rgb(221 214 254 / var(--tw-border-opacity, 1));
}
.border-white {
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}
.border-white\/15 {
  border-color: rgb(255 255 255 / 0.15);
}
.border-white\/20 {
  border-color: rgb(255 255 255 / 0.2);
}
.border-white\/40 {
  border-color: rgb(255 255 255 / 0.4);
}
.border-white\/45 {
  border-color: rgb(255 255 255 / 0.45);
}
.border-yellow-100 {
  --tw-border-opacity: 1;
  border-color: rgb(254 249 195 / var(--tw-border-opacity, 1));
}
.border-yellow-200 {
  --tw-border-opacity: 1;
  border-color: rgb(254 240 138 / var(--tw-border-opacity, 1));
}
.border-yellow-300 {
  --tw-border-opacity: 1;
  border-color: rgb(253 224 71 / var(--tw-border-opacity, 1));
}
.border-yellow-400 {
  --tw-border-opacity: 1;
  border-color: rgb(250 204 21 / var(--tw-border-opacity, 1));
}
.border-yellow-500 {
  --tw-border-opacity: 1;
  border-color: rgb(234 179 8 / var(--tw-border-opacity, 1));
}
.border-l-blue-500 {
  --tw-border-opacity: 1;
  border-left-color: rgb(0 68 255 / var(--tw-border-opacity, 1));
}
.border-t-\[\#1d3557\] {
  --tw-border-opacity: 1;
  border-top-color: rgb(29 53 87 / var(--tw-border-opacity, 1));
}
.border-t-blue-600 {
  --tw-border-opacity: 1;
  border-top-color: rgb(0 51 204 / var(--tw-border-opacity, 1));
}
.border-t-transparent {
  border-top-color: transparent;
}
.bg-\[\#06C755\] {
  --tw-bg-opacity: 1;
  background-color: rgb(6 199 85 / var(--tw-bg-opacity, 1));
}
.bg-\[\#1877F2\] {
  --tw-bg-opacity: 1;
  background-color: rgb(24 119 242 / var(--tw-bg-opacity, 1));
}
.bg-\[\#1d3557\] {
  --tw-bg-opacity: 1;
  background-color: rgb(29 53 87 / var(--tw-bg-opacity, 1));
}
.bg-\[\#1d3557\]\/10 {
  background-color: rgb(29 53 87 / 0.1);
}
.bg-\[\#e63946\] {
  --tw-bg-opacity: 1;
  background-color: rgb(230 57 70 / var(--tw-bg-opacity, 1));
}
.bg-\[\#e63946\]\/10 {
  background-color: rgb(230 57 70 / 0.1);
}
.bg-\[\#eef2f8\] {
  --tw-bg-opacity: 1;
  background-color: rgb(238 242 248 / var(--tw-bg-opacity, 1));
}
.bg-\[\#f4f6fb\] {
  --tw-bg-opacity: 1;
  background-color: rgb(244 246 251 / var(--tw-bg-opacity, 1));
}
.bg-\[\#f5c542\] {
  --tw-bg-opacity: 1;
  background-color: rgb(245 197 66 / var(--tw-bg-opacity, 1));
}
.bg-\[\#f5f8fd\] {
  --tw-bg-opacity: 1;
  background-color: rgb(245 248 253 / var(--tw-bg-opacity, 1));
}
.bg-\[\#fdf3d7\] {
  --tw-bg-opacity: 1;
  background-color: rgb(253 243 215 / var(--tw-bg-opacity, 1));
}
.bg-amber-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 243 199 / var(--tw-bg-opacity, 1));
}
.bg-amber-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(253 230 138 / var(--tw-bg-opacity, 1));
}
.bg-amber-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));
}
.bg-amber-50\/50 {
  background-color: rgb(255 251 235 / 0.5);
}
.bg-amber-50\/60 {
  background-color: rgb(255 251 235 / 0.6);
}
.bg-amber-50\/70 {
  background-color: rgb(255 251 235 / 0.7);
}
.bg-amber-50\/80 {
  background-color: rgb(255 251 235 / 0.8);
}
.bg-amber-50\/95 {
  background-color: rgb(255 251 235 / 0.95);
}
.bg-amber-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(245 158 11 / var(--tw-bg-opacity, 1));
}
.bg-amber-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(217 119 6 / var(--tw-bg-opacity, 1));
}
.bg-amber-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(180 83 9 / var(--tw-bg-opacity, 1));
}
.bg-black {
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
}
.bg-black\/10 {
  background-color: rgb(0 0 0 / 0.1);
}
.bg-black\/40 {
  background-color: rgb(0 0 0 / 0.4);
}
.bg-black\/50 {
  background-color: rgb(0 0 0 / 0.5);
}
.bg-black\/70 {
  background-color: rgb(0 0 0 / 0.7);
}
.bg-blue-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(204 220 255 / var(--tw-bg-opacity, 1));
}
.bg-blue-100\/80 {
  background-color: rgb(204 220 255 / 0.8);
}
.bg-blue-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(153 185 255 / var(--tw-bg-opacity, 1));
}
.bg-blue-300\/20 {
  background-color: rgb(102 149 255 / 0.2);
}
.bg-blue-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(51 102 255 / var(--tw-bg-opacity, 1));
}
.bg-blue-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(230 237 255 / var(--tw-bg-opacity, 1));
}
.bg-blue-50\/40 {
  background-color: rgb(230 237 255 / 0.4);
}
.bg-blue-50\/50 {
  background-color: rgb(230 237 255 / 0.5);
}
.bg-blue-50\/60 {
  background-color: rgb(230 237 255 / 0.6);
}
.bg-blue-50\/70 {
  background-color: rgb(230 237 255 / 0.7);
}
.bg-blue-50\/80 {
  background-color: rgb(230 237 255 / 0.8);
}
.bg-blue-50\/95 {
  background-color: rgb(230 237 255 / 0.95);
}
.bg-blue-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(0 68 255 / var(--tw-bg-opacity, 1));
}
.bg-blue-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(0 51 204 / var(--tw-bg-opacity, 1));
}
.bg-blue-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(0 34 153 / var(--tw-bg-opacity, 1));
}
.bg-blue-800\/50 {
  background-color: rgb(0 17 102 / 0.5);
}
.bg-blue-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 51 / var(--tw-bg-opacity, 1));
}
.bg-blue-900\/30 {
  background-color: rgb(0 0 51 / 0.3);
}
.bg-cyan-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(207 250 254 / var(--tw-bg-opacity, 1));
}
.bg-cyan-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(236 254 255 / var(--tw-bg-opacity, 1));
}
.bg-cyan-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(6 182 212 / var(--tw-bg-opacity, 1));
}
.bg-cyan-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(8 145 178 / var(--tw-bg-opacity, 1));
}
.bg-emerald-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(209 250 229 / var(--tw-bg-opacity, 1));
}
.bg-emerald-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(236 253 245 / var(--tw-bg-opacity, 1));
}
.bg-emerald-50\/30 {
  background-color: rgb(236 253 245 / 0.3);
}
.bg-emerald-50\/40 {
  background-color: rgb(236 253 245 / 0.4);
}
.bg-emerald-50\/50 {
  background-color: rgb(236 253 245 / 0.5);
}
.bg-emerald-50\/60 {
  background-color: rgb(236 253 245 / 0.6);
}
.bg-emerald-50\/70 {
  background-color: rgb(236 253 245 / 0.7);
}
.bg-emerald-50\/80 {
  background-color: rgb(236 253 245 / 0.8);
}
.bg-emerald-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(16 185 129 / var(--tw-bg-opacity, 1));
}
.bg-emerald-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(5 150 105 / var(--tw-bg-opacity, 1));
}
.bg-gray-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}
.bg-gray-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}
.bg-gray-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
}
.bg-gray-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));
}
.bg-gray-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}
.bg-gray-50\/50 {
  background-color: rgb(249 250 251 / 0.5);
}
.bg-gray-50\/70 {
  background-color: rgb(249 250 251 / 0.7);
}
.bg-gray-50\/80 {
  background-color: rgb(249 250 251 / 0.8);
}
.bg-gray-50\/90 {
  background-color: rgb(249 250 251 / 0.9);
}
.bg-gray-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(107 114 128 / var(--tw-bg-opacity, 1));
}
.bg-gray-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(75 85 99 / var(--tw-bg-opacity, 1));
}
.bg-gray-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
}
.bg-gray-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
}
.bg-gray-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(17 24 39 / var(--tw-bg-opacity, 1));
}
.bg-green-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(220 252 231 / var(--tw-bg-opacity, 1));
}
.bg-green-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(187 247 208 / var(--tw-bg-opacity, 1));
}
.bg-green-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(74 222 128 / var(--tw-bg-opacity, 1));
}
.bg-green-400\/20 {
  background-color: rgb(74 222 128 / 0.2);
}
.bg-green-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(240 253 244 / var(--tw-bg-opacity, 1));
}
.bg-green-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(34 197 94 / var(--tw-bg-opacity, 1));
}
.bg-green-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(22 163 74 / var(--tw-bg-opacity, 1));
}
.bg-green-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(21 128 61 / var(--tw-bg-opacity, 1));
}
.bg-green-800\/50 {
  background-color: rgb(22 101 52 / 0.5);
}
.bg-indigo-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(224 231 255 / var(--tw-bg-opacity, 1));
}
.bg-indigo-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(238 242 255 / var(--tw-bg-opacity, 1));
}
.bg-indigo-50\/50 {
  background-color: rgb(238 242 255 / 0.5);
}
.bg-indigo-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(99 102 241 / var(--tw-bg-opacity, 1));
}
.bg-indigo-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(79 70 229 / var(--tw-bg-opacity, 1));
}
.bg-orange-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 225 214 / var(--tw-bg-opacity, 1));
}
.bg-orange-100\/80 {
  background-color: rgb(255 225 214 / 0.8);
}
.bg-orange-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 195 173 / var(--tw-bg-opacity, 1));
}
.bg-orange-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 240 235 / var(--tw-bg-opacity, 1));
}
.bg-orange-50\/80 {
  background-color: rgb(255 240 235 / 0.8);
}
.bg-orange-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 107 53 / var(--tw-bg-opacity, 1));
}
.bg-orange-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(204 84 41 / var(--tw-bg-opacity, 1));
}
.bg-pink-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(252 231 243 / var(--tw-bg-opacity, 1));
}
.bg-pink-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(253 242 248 / var(--tw-bg-opacity, 1));
}
.bg-pink-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(219 39 119 / var(--tw-bg-opacity, 1));
}
.bg-purple-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(243 232 255 / var(--tw-bg-opacity, 1));
}
.bg-purple-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(233 213 255 / var(--tw-bg-opacity, 1));
}
.bg-purple-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(250 245 255 / var(--tw-bg-opacity, 1));
}
.bg-purple-50\/70 {
  background-color: rgb(250 245 255 / 0.7);
}
.bg-purple-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(168 85 247 / var(--tw-bg-opacity, 1));
}
.bg-purple-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(147 51 234 / var(--tw-bg-opacity, 1));
}
.bg-purple-800\/50 {
  background-color: rgb(107 33 168 / 0.5);
}
.bg-red-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1));
}
.bg-red-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 202 202 / var(--tw-bg-opacity, 1));
}
.bg-red-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(248 113 113 / var(--tw-bg-opacity, 1));
}
.bg-red-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));
}
.bg-red-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(239 68 68 / var(--tw-bg-opacity, 1));
}
.bg-red-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(220 38 38 / var(--tw-bg-opacity, 1));
}
.bg-red-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(185 28 28 / var(--tw-bg-opacity, 1));
}
.bg-rose-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 228 230 / var(--tw-bg-opacity, 1));
}
.bg-rose-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 205 211 / var(--tw-bg-opacity, 1));
}
.bg-rose-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 241 242 / var(--tw-bg-opacity, 1));
}
.bg-rose-50\/70 {
  background-color: rgb(255 241 242 / 0.7);
}
.bg-rose-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(244 63 94 / var(--tw-bg-opacity, 1));
}
.bg-rose-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(225 29 72 / var(--tw-bg-opacity, 1));
}
.bg-sky-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(224 242 254 / var(--tw-bg-opacity, 1));
}
.bg-sky-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(240 249 255 / var(--tw-bg-opacity, 1));
}
.bg-sky-50\/60 {
  background-color: rgb(240 249 255 / 0.6);
}
.bg-sky-50\/70 {
  background-color: rgb(240 249 255 / 0.7);
}
.bg-sky-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(14 165 233 / var(--tw-bg-opacity, 1));
}
.bg-sky-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(2 132 199 / var(--tw-bg-opacity, 1));
}
.bg-slate-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1));
}
.bg-slate-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(226 232 240 / var(--tw-bg-opacity, 1));
}
.bg-slate-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(203 213 225 / var(--tw-bg-opacity, 1));
}
.bg-slate-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(148 163 184 / var(--tw-bg-opacity, 1));
}
.bg-slate-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
}
.bg-slate-50\/50 {
  background-color: rgb(248 250 252 / 0.5);
}
.bg-slate-50\/80 {
  background-color: rgb(248 250 252 / 0.8);
}
.bg-slate-50\/90 {
  background-color: rgb(248 250 252 / 0.9);
}
.bg-slate-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(100 116 139 / var(--tw-bg-opacity, 1));
}
.bg-slate-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(51 65 85 / var(--tw-bg-opacity, 1));
}
.bg-teal-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(0 204 180 / var(--tw-bg-opacity, 1));
}
.bg-transparent {
  background-color: transparent;
}
.bg-violet-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(237 233 254 / var(--tw-bg-opacity, 1));
}
.bg-violet-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(245 243 255 / var(--tw-bg-opacity, 1));
}
.bg-violet-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(139 92 246 / var(--tw-bg-opacity, 1));
}
.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}
.bg-white\/10 {
  background-color: rgb(255 255 255 / 0.1);
}
.bg-white\/15 {
  background-color: rgb(255 255 255 / 0.15);
}
.bg-white\/20 {
  background-color: rgb(255 255 255 / 0.2);
}
.bg-white\/50 {
  background-color: rgb(255 255 255 / 0.5);
}
.bg-white\/60 {
  background-color: rgb(255 255 255 / 0.6);
}
.bg-white\/70 {
  background-color: rgb(255 255 255 / 0.7);
}
.bg-white\/80 {
  background-color: rgb(255 255 255 / 0.8);
}
.bg-white\/90 {
  background-color: rgb(255 255 255 / 0.9);
}
.bg-white\/95 {
  background-color: rgb(255 255 255 / 0.95);
}
.bg-yellow-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 249 195 / var(--tw-bg-opacity, 1));
}
.bg-yellow-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 240 138 / var(--tw-bg-opacity, 1));
}
.bg-yellow-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(250 204 21 / var(--tw-bg-opacity, 1));
}
.bg-yellow-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 252 232 / var(--tw-bg-opacity, 1));
}
.bg-yellow-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(234 179 8 / var(--tw-bg-opacity, 1));
}
.bg-yellow-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(202 138 4 / var(--tw-bg-opacity, 1));
}
.bg-opacity-0 {
  --tw-bg-opacity: 0;
}
.bg-opacity-10 {
  --tw-bg-opacity: 0.1;
}
.bg-opacity-20 {
  --tw-bg-opacity: 0.2;
}
.bg-opacity-30 {
  --tw-bg-opacity: 0.3;
}
.bg-opacity-40 {
  --tw-bg-opacity: 0.4;
}
.bg-opacity-50 {
  --tw-bg-opacity: 0.5;
}
.bg-opacity-70 {
  --tw-bg-opacity: 0.7;
}
.bg-opacity-75 {
  --tw-bg-opacity: 0.75;
}
.bg-opacity-90 {
  --tw-bg-opacity: 0.9;
}
.bg-\[radial-gradient\(ellipse_at_top_right\2c rgba\(6\2c 182\2c 212\2c 0\.12\)\2c transparent_50\%\)\] {
  background-image: radial-gradient(ellipse at top right,rgba(6,182,212,0.12),transparent 50%);
}
.bg-\[url\(\'data\:image\/svg\+xml\;base64\2c PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHZpZXdCb3g9IjAgMCA2MCA2MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxnIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4wNSI\+PGNpcmNsZSBjeD0iMzAiIGN5PSIzMCIgcj0iMiIvPjwvZz48L2c\+PC9zdmc\+\'\)\] {
  background-image: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHZpZXdCb3g9IjAgMCA2MCA2MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxnIGZpbGw9IiNmZmZmZmYiIGZpbGwtb3BhY2l0eT0iMC4wNSI+PGNpcmNsZSBjeD0iMzAiIGN5PSIzMCIgcj0iMiIvPjwvZz48L2c+PC9zdmc+');
}
.bg-gradient-to-b {
  background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
}
.bg-gradient-to-br {
  background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
}
.bg-gradient-to-r {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
.bg-gradient-to-t {
  background-image: linear-gradient(to top, var(--tw-gradient-stops));
}
.from-\[\#1d3557\] {
  --tw-gradient-from: #1d3557 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(29 53 87 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-\[\#dbe7f7\] {
  --tw-gradient-from: #dbe7f7 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(219 231 247 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-\[\#eef3fb\] {
  --tw-gradient-from: #eef3fb var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(238 243 251 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-amber-50 {
  --tw-gradient-from: #fffbeb var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 251 235 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-amber-500 {
  --tw-gradient-from: #f59e0b var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(245 158 11 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-blue-100 {
  --tw-gradient-from: #ccdcff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(204 220 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-blue-400 {
  --tw-gradient-from: #3366ff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(51 102 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-blue-50 {
  --tw-gradient-from: #e6edff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(230 237 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-blue-500 {
  --tw-gradient-from: #0044ff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 68 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-blue-600 {
  --tw-gradient-from: #0033cc var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 51 204 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-blue-800 {
  --tw-gradient-from: #001166 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 17 102 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-cyan-50 {
  --tw-gradient-from: #ecfeff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(236 254 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-emerald-50 {
  --tw-gradient-from: #ecfdf5 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(236 253 245 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-emerald-500 {
  --tw-gradient-from: #10b981 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(16 185 129 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-gray-100 {
  --tw-gradient-from: #f3f4f6 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(243 244 246 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-gray-50 {
  --tw-gradient-from: #f9fafb var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-gray-700 {
  --tw-gradient-from: #374151 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(55 65 81 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-gray-800 {
  --tw-gradient-from: #1f2937 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(31 41 55 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-green-400\/10 {
  --tw-gradient-from: rgb(74 222 128 / 0.1) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(74 222 128 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-green-50 {
  --tw-gradient-from: #f0fdf4 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(240 253 244 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-green-500 {
  --tw-gradient-from: #22c55e var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(34 197 94 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-green-600 {
  --tw-gradient-from: #16a34a var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(22 163 74 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-indigo-50 {
  --tw-gradient-from: #eef2ff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(238 242 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-indigo-500 {
  --tw-gradient-from: #6366f1 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-orange-400\/10 {
  --tw-gradient-from: rgb(255 135 92 / 0.1) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 135 92 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-orange-50 {
  --tw-gradient-from: #fff0eb var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 240 235 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-orange-500 {
  --tw-gradient-from: #ff6b35 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 107 53 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-orange-600 {
  --tw-gradient-from: #cc5429 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(204 84 41 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-purple-50 {
  --tw-gradient-from: #faf5ff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(250 245 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-purple-500 {
  --tw-gradient-from: #a855f7 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-purple-600 {
  --tw-gradient-from: #9333ea var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(147 51 234 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-red-50 {
  --tw-gradient-from: #fef2f2 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(254 242 242 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-red-500 {
  --tw-gradient-from: #ef4444 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-red-600 {
  --tw-gradient-from: #dc2626 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(220 38 38 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-rose-500 {
  --tw-gradient-from: #f43f5e var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(244 63 94 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-sky-50 {
  --tw-gradient-from: #f0f9ff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(240 249 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-sky-500 {
  --tw-gradient-from: #0ea5e9 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(14 165 233 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-slate-50 {
  --tw-gradient-from: #f8fafc var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(248 250 252 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-slate-600 {
  --tw-gradient-from: #475569 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(71 85 105 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-slate-900 {
  --tw-gradient-from: #0f172a var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-teal-50 {
  --tw-gradient-from: #e6fffd var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(230 255 253 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-teal-500 {
  --tw-gradient-from: #00ffe0 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 255 224 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-transparent {
  --tw-gradient-from: transparent var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-violet-500 {
  --tw-gradient-from: #8b5cf6 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(139 92 246 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-white {
  --tw-gradient-from: #fff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-white\/20 {
  --tw-gradient-from: rgb(255 255 255 / 0.2) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-yellow-400 {
  --tw-gradient-from: #facc15 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(250 204 21 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-yellow-50 {
  --tw-gradient-from: #fefce8 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(254 252 232 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-yellow-500 {
  --tw-gradient-from: #eab308 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(234 179 8 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-yellow-900\/20 {
  --tw-gradient-from: rgb(113 63 18 / 0.2) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(113 63 18 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.via-\[\#274c77\] {
  --tw-gradient-to: rgb(39 76 119 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #274c77 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-\[\#f4f6fb\] {
  --tw-gradient-to: rgb(244 246 251 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #f4f6fb var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-amber-50 {
  --tw-gradient-to: rgb(255 251 235 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #fffbeb var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-blue-100 {
  --tw-gradient-to: rgb(204 220 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #ccdcff var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-blue-50 {
  --tw-gradient-to: rgb(230 237 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #e6edff var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-blue-700 {
  --tw-gradient-to: rgb(0 34 153 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #002299 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-emerald-50 {
  --tw-gradient-to: rgb(236 253 245 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #ecfdf5 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-gray-100 {
  --tw-gradient-to: rgb(243 244 246 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #f3f4f6 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-gray-300 {
  --tw-gradient-to: rgb(209 213 219 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #d1d5db var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-green-100 {
  --tw-gradient-to: rgb(220 252 231 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #dcfce7 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-green-50 {
  --tw-gradient-to: rgb(240 253 244 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #f0fdf4 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-indigo-50 {
  --tw-gradient-to: rgb(238 242 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #eef2ff var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-orange-100 {
  --tw-gradient-to: rgb(255 225 214 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #ffe1d6 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-purple-100 {
  --tw-gradient-to: rgb(243 232 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #f3e8ff var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-sky-50 {
  --tw-gradient-to: rgb(240 249 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #f0f9ff var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-white {
  --tw-gradient-to: rgb(255 255 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #fff var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-yellow-500 {
  --tw-gradient-to: rgb(234 179 8 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #eab308 var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.to-\[\#274c77\] {
  --tw-gradient-to: #274c77 var(--tw-gradient-to-position);
}
.to-\[\#3d5a80\] {
  --tw-gradient-to: #3d5a80 var(--tw-gradient-to-position);
}
.to-\[\#c3d6f0\] {
  --tw-gradient-to: #c3d6f0 var(--tw-gradient-to-position);
}
.to-amber-100 {
  --tw-gradient-to: #fef3c7 var(--tw-gradient-to-position);
}
.to-amber-50 {
  --tw-gradient-to: #fffbeb var(--tw-gradient-to-position);
}
.to-amber-600 {
  --tw-gradient-to: #d97706 var(--tw-gradient-to-position);
}
.to-blue-100 {
  --tw-gradient-to: #ccdcff var(--tw-gradient-to-position);
}
.to-blue-200 {
  --tw-gradient-to: #99b9ff var(--tw-gradient-to-position);
}
.to-blue-400 {
  --tw-gradient-to: #3366ff var(--tw-gradient-to-position);
}
.to-blue-50 {
  --tw-gradient-to: #e6edff var(--tw-gradient-to-position);
}
.to-blue-500 {
  --tw-gradient-to: #0044ff var(--tw-gradient-to-position);
}
.to-blue-600 {
  --tw-gradient-to: #0033cc var(--tw-gradient-to-position);
}
.to-blue-700 {
  --tw-gradient-to: #002299 var(--tw-gradient-to-position);
}
.to-blue-800 {
  --tw-gradient-to: #001166 var(--tw-gradient-to-position);
}
.to-cyan-50 {
  --tw-gradient-to: #ecfeff var(--tw-gradient-to-position);
}
.to-emerald-100 {
  --tw-gradient-to: #d1fae5 var(--tw-gradient-to-position);
}
.to-emerald-400\/10 {
  --tw-gradient-to: rgb(52 211 153 / 0.1) var(--tw-gradient-to-position);
}
.to-emerald-50 {
  --tw-gradient-to: #ecfdf5 var(--tw-gradient-to-position);
}
.to-emerald-500 {
  --tw-gradient-to: #10b981 var(--tw-gradient-to-position);
}
.to-emerald-600 {
  --tw-gradient-to: #059669 var(--tw-gradient-to-position);
}
.to-gray-100 {
  --tw-gradient-to: #f3f4f6 var(--tw-gradient-to-position);
}
.to-gray-100\/90 {
  --tw-gradient-to: rgb(243 244 246 / 0.9) var(--tw-gradient-to-position);
}
.to-gray-200 {
  --tw-gradient-to: #e5e7eb var(--tw-gradient-to-position);
}
.to-gray-50 {
  --tw-gradient-to: #f9fafb var(--tw-gradient-to-position);
}
.to-gray-800 {
  --tw-gradient-to: #1f2937 var(--tw-gradient-to-position);
}
.to-gray-900 {
  --tw-gradient-to: #111827 var(--tw-gradient-to-position);
}
.to-green-100 {
  --tw-gradient-to: #dcfce7 var(--tw-gradient-to-position);
}
.to-green-50 {
  --tw-gradient-to: #f0fdf4 var(--tw-gradient-to-position);
}
.to-green-50\/30 {
  --tw-gradient-to: rgb(240 253 244 / 0.3) var(--tw-gradient-to-position);
}
.to-green-600 {
  --tw-gradient-to: #16a34a var(--tw-gradient-to-position);
}
.to-green-700 {
  --tw-gradient-to: #15803d var(--tw-gradient-to-position);
}
.to-indigo-100 {
  --tw-gradient-to: #e0e7ff var(--tw-gradient-to-position);
}
.to-indigo-50 {
  --tw-gradient-to: #eef2ff var(--tw-gradient-to-position);
}
.to-indigo-50\/40 {
  --tw-gradient-to: rgb(238 242 255 / 0.4) var(--tw-gradient-to-position);
}
.to-indigo-600 {
  --tw-gradient-to: #4f46e5 var(--tw-gradient-to-position);
}
.to-indigo-700 {
  --tw-gradient-to: #4338ca var(--tw-gradient-to-position);
}
.to-orange-100 {
  --tw-gradient-to: #ffe1d6 var(--tw-gradient-to-position);
}
.to-orange-50 {
  --tw-gradient-to: #fff0eb var(--tw-gradient-to-position);
}
.to-orange-50\/30 {
  --tw-gradient-to: rgb(255 240 235 / 0.3) var(--tw-gradient-to-position);
}
.to-orange-500 {
  --tw-gradient-to: #ff6b35 var(--tw-gradient-to-position);
}
.to-orange-600 {
  --tw-gradient-to: #cc5429 var(--tw-gradient-to-position);
}
.to-orange-700 {
  --tw-gradient-to: #993f1f var(--tw-gradient-to-position);
}
.to-orange-900\/20 {
  --tw-gradient-to: rgb(51 21 10 / 0.2) var(--tw-gradient-to-position);
}
.to-pink-50 {
  --tw-gradient-to: #fdf2f8 var(--tw-gradient-to-position);
}
.to-purple-100 {
  --tw-gradient-to: #f3e8ff var(--tw-gradient-to-position);
}
.to-purple-50 {
  --tw-gradient-to: #faf5ff var(--tw-gradient-to-position);
}
.to-purple-600 {
  --tw-gradient-to: #9333ea var(--tw-gradient-to-position);
}
.to-purple-700 {
  --tw-gradient-to: #7e22ce var(--tw-gradient-to-position);
}
.to-purple-900 {
  --tw-gradient-to: #581c87 var(--tw-gradient-to-position);
}
.to-red-100 {
  --tw-gradient-to: #fee2e2 var(--tw-gradient-to-position);
}
.to-red-50 {
  --tw-gradient-to: #fef2f2 var(--tw-gradient-to-position);
}
.to-red-600 {
  --tw-gradient-to: #dc2626 var(--tw-gradient-to-position);
}
.to-rose-100 {
  --tw-gradient-to: #ffe4e6 var(--tw-gradient-to-position);
}
.to-rose-50 {
  --tw-gradient-to: #fff1f2 var(--tw-gradient-to-position);
}
.to-rose-600 {
  --tw-gradient-to: #e11d48 var(--tw-gradient-to-position);
}
.to-sky-100 {
  --tw-gradient-to: #e0f2fe var(--tw-gradient-to-position);
}
.to-sky-600 {
  --tw-gradient-to: #0284c7 var(--tw-gradient-to-position);
}
.to-slate-700 {
  --tw-gradient-to: #334155 var(--tw-gradient-to-position);
}
.to-slate-800 {
  --tw-gradient-to: #1e293b var(--tw-gradient-to-position);
}
.to-teal-100 {
  --tw-gradient-to: #ccfff9 var(--tw-gradient-to-position);
}
.to-teal-600 {
  --tw-gradient-to: #00ccb4 var(--tw-gradient-to-position);
}
.to-transparent {
  --tw-gradient-to: transparent var(--tw-gradient-to-position);
}
.to-violet-100 {
  --tw-gradient-to: #ede9fe var(--tw-gradient-to-position);
}
.to-violet-50 {
  --tw-gradient-to: #f5f3ff var(--tw-gradient-to-position);
}
.to-violet-600 {
  --tw-gradient-to: #7c3aed var(--tw-gradient-to-position);
}
.to-white {
  --tw-gradient-to: #fff var(--tw-gradient-to-position);
}
.to-yellow-100 {
  --tw-gradient-to: #fef9c3 var(--tw-gradient-to-position);
}
.to-yellow-400\/10 {
  --tw-gradient-to: rgb(250 204 21 / 0.1) var(--tw-gradient-to-position);
}
.to-yellow-500 {
  --tw-gradient-to: #eab308 var(--tw-gradient-to-position);
}
.to-yellow-600 {
  --tw-gradient-to: #ca8a04 var(--tw-gradient-to-position);
}
.bg-cover {
  background-size: cover;
}
.bg-clip-text {
  -webkit-background-clip: text;
          background-clip: text;
}
.bg-center {
  background-position: center;
}
.fill-\[\#f5c542\] {
  fill: #f5c542;
}
.fill-amber-400 {
  fill: #fbbf24;
}
.fill-current {
  fill: currentColor;
}
.fill-white {
  fill: #fff;
}
.fill-yellow-400 {
  fill: #facc15;
}
.fill-yellow-500 {
  fill: #eab308;
}
.stroke-\[1\.75\] {
  stroke-width: 1.75;
}
.stroke-\[2\.5\] {
  stroke-width: 2.5;
}
.object-contain {
  -o-object-fit: contain;
     object-fit: contain;
}
.object-cover {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-0 {
  padding: 0px;
}
.p-1 {
  padding: 0.25rem;
}
.p-1\.5 {
  padding: 0.375rem;
}
.p-10 {
  padding: 2.5rem;
}
.p-12 {
  padding: 3rem;
}
.p-2 {
  padding: 0.5rem;
}
.p-2\.5 {
  padding: 0.625rem;
}
.p-3 {
  padding: 0.75rem;
}
.p-3\.5 {
  padding: 0.875rem;
}
.p-4 {
  padding: 1rem;
}
.p-5 {
  padding: 1.25rem;
}
.p-6 {
  padding: 1.5rem;
}
.p-8 {
  padding: 2rem;
}
.px-0 {
  padding-left: 0px;
  padding-right: 0px;
}
.px-0\.5 {
  padding-left: 0.125rem;
  padding-right: 0.125rem;
}
.px-1 {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}
.px-1\.5 {
  padding-left: 0.375rem;
  padding-right: 0.375rem;
}
.px-2 {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.px-2\.5 {
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}
.px-3 {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.px-3\.5 {
  padding-left: 0.875rem;
  padding-right: 0.875rem;
}
.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}
.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.px-7 {
  padding-left: 1.75rem;
  padding-right: 1.75rem;
}
.py-0 {
  padding-top: 0px;
  padding-bottom: 0px;
}
.py-0\.5 {
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}
.py-1 {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
.py-1\.5 {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}
.py-10 {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
.py-12 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.py-14 {
  padding-top: 3.5rem;
  padding-bottom: 3.5rem;
}
.py-16 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.py-2\.5 {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}
.py-20 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
.py-3 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}
.py-3\.5 {
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
}
.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.py-5 {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
.py-6 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
.py-8 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.pb-0\.5 {
  padding-bottom: 0.125rem;
}
.pb-1 {
  padding-bottom: 0.25rem;
}
.pb-12 {
  padding-bottom: 3rem;
}
.pb-14 {
  padding-bottom: 3.5rem;
}
.pb-2 {
  padding-bottom: 0.5rem;
}
.pb-3 {
  padding-bottom: 0.75rem;
}
.pb-4 {
  padding-bottom: 1rem;
}
.pb-6 {
  padding-bottom: 1.5rem;
}
.pb-8 {
  padding-bottom: 2rem;
}
.pb-\[calc\(1rem\+env\(safe-area-inset-bottom\2c 0px\)\)\] {
  padding-bottom: calc(1rem + env(safe-area-inset-bottom,0px));
}
.pb-\[calc\(var\(--fixnow-bottom-nav-h\)\+var\(--fixnow-bottom-inset\)\+1\.5rem\)\] {
  padding-bottom: calc(var(--fixnow-bottom-nav-h) + var(--fixnow-bottom-inset) + 1.5rem);
}
.pb-\[env\(safe-area-inset-bottom\2c 0px\)\] {
  padding-bottom: env(safe-area-inset-bottom,0px);
}
.pb-\[max\(2rem\2c env\(safe-area-inset-bottom\2c 0px\)\)\] {
  padding-bottom: max(2rem,env(safe-area-inset-bottom,0px));
}
.pl-10 {
  padding-left: 2.5rem;
}
.pl-11 {
  padding-left: 2.75rem;
}
.pl-12 {
  padding-left: 3rem;
}
.pl-3 {
  padding-left: 0.75rem;
}
.pl-4 {
  padding-left: 1rem;
}
.pl-5 {
  padding-left: 1.25rem;
}
.pl-8 {
  padding-left: 2rem;
}
.pl-9 {
  padding-left: 2.25rem;
}
.pl-\[4\.25rem\] {
  padding-left: 4.25rem;
}
.pr-1 {
  padding-right: 0.25rem;
}
.pr-1\.5 {
  padding-right: 0.375rem;
}
.pr-10 {
  padding-right: 2.5rem;
}
.pr-12 {
  padding-right: 3rem;
}
.pr-20 {
  padding-right: 5rem;
}
.pr-3 {
  padding-right: 0.75rem;
}
.pr-32 {
  padding-right: 8rem;
}
.pr-4 {
  padding-right: 1rem;
}
.pt-1 {
  padding-top: 0.25rem;
}
.pt-1\.5 {
  padding-top: 0.375rem;
}
.pt-16 {
  padding-top: 4rem;
}
.pt-2 {
  padding-top: 0.5rem;
}
.pt-3 {
  padding-top: 0.75rem;
}
.pt-4 {
  padding-top: 1rem;
}
.pt-5 {
  padding-top: 1.25rem;
}
.pt-6 {
  padding-top: 1.5rem;
}
.pt-8 {
  padding-top: 2rem;
}
.pt-\[3\.75rem\] {
  padding-top: 3.75rem;
}
.pt-\[env\(safe-area-inset-top\2c 0px\)\] {
  padding-top: env(safe-area-inset-top,0px);
}
.pt-\[max\(0px\2c env\(safe-area-inset-top\2c 0px\)\)\] {
  padding-top: max(0px,env(safe-area-inset-top,0px));
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.align-top {
  vertical-align: top;
}
.align-middle {
  vertical-align: middle;
}
.font-mono {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}
.font-sans {
  font-family: Inter, ui-sans-serif, system-ui, sans-serif;
}
.text-2xl {
  font-size: 1.5rem;
  line-height: 2rem;
}
.text-3xl {
  font-size: 1.875rem;
  line-height: 2.25rem;
}
.text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem;
}
.text-5xl {
  font-size: 3rem;
  line-height: 1;
}
.text-6xl {
  font-size: 3.75rem;
  line-height: 1;
}
.text-\[0\.625rem\] {
  font-size: 0.625rem;
}
.text-\[0\.6875rem\] {
  font-size: 0.6875rem;
}
.text-\[0\.9375rem\] {
  font-size: 0.9375rem;
}
.text-\[1\.375rem\] {
  font-size: 1.375rem;
}
.text-\[1\.75rem\] {
  font-size: 1.75rem;
}
.text-\[10px\] {
  font-size: 10px;
}
.text-\[11px\] {
  font-size: 11px;
}
.text-\[13px\] {
  font-size: 13px;
}
.text-\[15px\] {
  font-size: 15px;
}
.text-\[2\.25rem\] {
  font-size: 2.25rem;
}
.text-\[2rem\] {
  font-size: 2rem;
}
.text-\[9px\] {
  font-size: 9px;
}
.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}
.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}
.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}
.text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}
.font-bold {
  font-weight: 700;
}
.font-extrabold {
  font-weight: 800;
}
.font-medium {
  font-weight: 500;
}
.font-normal {
  font-weight: 400;
}
.font-semibold {
  font-weight: 600;
}
.uppercase {
  text-transform: uppercase;
}
.capitalize {
  text-transform: capitalize;
}
.italic {
  font-style: italic;
}
.tabular-nums {
  --tw-numeric-spacing: tabular-nums;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}
.leading-5 {
  line-height: 1.25rem;
}
.leading-7 {
  line-height: 1.75rem;
}
.leading-none {
  line-height: 1;
}
.leading-relaxed {
  line-height: 1.625;
}
.leading-snug {
  line-height: 1.375;
}
.leading-tight {
  line-height: 1.25;
}
.tracking-tight {
  letter-spacing: -0.025em;
}
.tracking-wide {
  letter-spacing: 0.025em;
}
.tracking-wider {
  letter-spacing: 0.05em;
}
.text-\[\#1d3557\] {
  --tw-text-opacity: 1;
  color: rgb(29 53 87 / var(--tw-text-opacity, 1));
}
.text-\[\#1d3557\]\/50 {
  color: rgb(29 53 87 / 0.5);
}
.text-\[\#274c77\] {
  --tw-text-opacity: 1;
  color: rgb(39 76 119 / var(--tw-text-opacity, 1));
}
.text-\[\#274c77\]\/60 {
  color: rgb(39 76 119 / 0.6);
}
.text-\[\#274c77\]\/70 {
  color: rgb(39 76 119 / 0.7);
}
.text-\[\#a07400\] {
  --tw-text-opacity: 1;
  color: rgb(160 116 0 / var(--tw-text-opacity, 1));
}
.text-\[\#e63946\] {
  --tw-text-opacity: 1;
  color: rgb(230 57 70 / var(--tw-text-opacity, 1));
}
.text-\[\#f5c542\] {
  --tw-text-opacity: 1;
  color: rgb(245 197 66 / var(--tw-text-opacity, 1));
}
.text-\[\#ffe7a3\] {
  --tw-text-opacity: 1;
  color: rgb(255 231 163 / var(--tw-text-opacity, 1));
}
.text-amber-300 {
  --tw-text-opacity: 1;
  color: rgb(252 211 77 / var(--tw-text-opacity, 1));
}
.text-amber-400 {
  --tw-text-opacity: 1;
  color: rgb(251 191 36 / var(--tw-text-opacity, 1));
}
.text-amber-500 {
  --tw-text-opacity: 1;
  color: rgb(245 158 11 / var(--tw-text-opacity, 1));
}
.text-amber-600 {
  --tw-text-opacity: 1;
  color: rgb(217 119 6 / var(--tw-text-opacity, 1));
}
.text-amber-700 {
  --tw-text-opacity: 1;
  color: rgb(180 83 9 / var(--tw-text-opacity, 1));
}
.text-amber-800 {
  --tw-text-opacity: 1;
  color: rgb(146 64 14 / var(--tw-text-opacity, 1));
}
.text-amber-800\/80 {
  color: rgb(146 64 14 / 0.8);
}
.text-amber-800\/90 {
  color: rgb(146 64 14 / 0.9);
}
.text-amber-900 {
  --tw-text-opacity: 1;
  color: rgb(120 53 15 / var(--tw-text-opacity, 1));
}
.text-amber-900\/80 {
  color: rgb(120 53 15 / 0.8);
}
.text-amber-900\/90 {
  color: rgb(120 53 15 / 0.9);
}
.text-amber-900\/95 {
  color: rgb(120 53 15 / 0.95);
}
.text-amber-950 {
  --tw-text-opacity: 1;
  color: rgb(69 26 3 / var(--tw-text-opacity, 1));
}
.text-blue-100 {
  --tw-text-opacity: 1;
  color: rgb(204 220 255 / var(--tw-text-opacity, 1));
}
.text-blue-200 {
  --tw-text-opacity: 1;
  color: rgb(153 185 255 / var(--tw-text-opacity, 1));
}
.text-blue-300 {
  --tw-text-opacity: 1;
  color: rgb(102 149 255 / var(--tw-text-opacity, 1));
}
.text-blue-400 {
  --tw-text-opacity: 1;
  color: rgb(51 102 255 / var(--tw-text-opacity, 1));
}
.text-blue-500 {
  --tw-text-opacity: 1;
  color: rgb(0 68 255 / var(--tw-text-opacity, 1));
}
.text-blue-500\/90 {
  color: rgb(0 68 255 / 0.9);
}
.text-blue-600 {
  --tw-text-opacity: 1;
  color: rgb(0 51 204 / var(--tw-text-opacity, 1));
}
.text-blue-700 {
  --tw-text-opacity: 1;
  color: rgb(0 34 153 / var(--tw-text-opacity, 1));
}
.text-blue-700\/80 {
  color: rgb(0 34 153 / 0.8);
}
.text-blue-700\/90 {
  color: rgb(0 34 153 / 0.9);
}
.text-blue-800 {
  --tw-text-opacity: 1;
  color: rgb(0 17 102 / var(--tw-text-opacity, 1));
}
.text-blue-900 {
  --tw-text-opacity: 1;
  color: rgb(0 0 51 / var(--tw-text-opacity, 1));
}
.text-blue-900\/85 {
  color: rgb(0 0 51 / 0.85);
}
.text-blue-900\/90 {
  color: rgb(0 0 51 / 0.9);
}
.text-blue-950 {
  --tw-text-opacity: 1;
  color: rgb(23 37 84 / var(--tw-text-opacity, 1));
}
.text-cyan-200 {
  --tw-text-opacity: 1;
  color: rgb(165 243 252 / var(--tw-text-opacity, 1));
}
.text-cyan-500 {
  --tw-text-opacity: 1;
  color: rgb(6 182 212 / var(--tw-text-opacity, 1));
}
.text-cyan-600 {
  --tw-text-opacity: 1;
  color: rgb(8 145 178 / var(--tw-text-opacity, 1));
}
.text-cyan-700 {
  --tw-text-opacity: 1;
  color: rgb(14 116 144 / var(--tw-text-opacity, 1));
}
.text-cyan-800 {
  --tw-text-opacity: 1;
  color: rgb(21 94 117 / var(--tw-text-opacity, 1));
}
.text-emerald-500 {
  --tw-text-opacity: 1;
  color: rgb(16 185 129 / var(--tw-text-opacity, 1));
}
.text-emerald-600 {
  --tw-text-opacity: 1;
  color: rgb(5 150 105 / var(--tw-text-opacity, 1));
}
.text-emerald-700 {
  --tw-text-opacity: 1;
  color: rgb(4 120 87 / var(--tw-text-opacity, 1));
}
.text-emerald-700\/80 {
  color: rgb(4 120 87 / 0.8);
}
.text-emerald-700\/90 {
  color: rgb(4 120 87 / 0.9);
}
.text-emerald-800 {
  --tw-text-opacity: 1;
  color: rgb(6 95 70 / var(--tw-text-opacity, 1));
}
.text-emerald-800\/90 {
  color: rgb(6 95 70 / 0.9);
}
.text-emerald-900 {
  --tw-text-opacity: 1;
  color: rgb(6 78 59 / var(--tw-text-opacity, 1));
}
.text-gray-100 {
  --tw-text-opacity: 1;
  color: rgb(243 244 246 / var(--tw-text-opacity, 1));
}
.text-gray-200 {
  --tw-text-opacity: 1;
  color: rgb(229 231 235 / var(--tw-text-opacity, 1));
}
.text-gray-300 {
  --tw-text-opacity: 1;
  color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}
.text-gray-400 {
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}
.text-gray-500 {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}
.text-gray-600 {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}
.text-gray-700 {
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}
.text-gray-800 {
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
}
.text-gray-900 {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}
.text-green-100 {
  --tw-text-opacity: 1;
  color: rgb(220 252 231 / var(--tw-text-opacity, 1));
}
.text-green-200 {
  --tw-text-opacity: 1;
  color: rgb(187 247 208 / var(--tw-text-opacity, 1));
}
.text-green-300 {
  --tw-text-opacity: 1;
  color: rgb(134 239 172 / var(--tw-text-opacity, 1));
}
.text-green-500 {
  --tw-text-opacity: 1;
  color: rgb(34 197 94 / var(--tw-text-opacity, 1));
}
.text-green-600 {
  --tw-text-opacity: 1;
  color: rgb(22 163 74 / var(--tw-text-opacity, 1));
}
.text-green-700 {
  --tw-text-opacity: 1;
  color: rgb(21 128 61 / var(--tw-text-opacity, 1));
}
.text-green-800 {
  --tw-text-opacity: 1;
  color: rgb(22 101 52 / var(--tw-text-opacity, 1));
}
.text-green-900 {
  --tw-text-opacity: 1;
  color: rgb(20 83 45 / var(--tw-text-opacity, 1));
}
.text-indigo-100 {
  --tw-text-opacity: 1;
  color: rgb(224 231 255 / var(--tw-text-opacity, 1));
}
.text-indigo-200 {
  --tw-text-opacity: 1;
  color: rgb(199 210 254 / var(--tw-text-opacity, 1));
}
.text-indigo-400 {
  --tw-text-opacity: 1;
  color: rgb(129 140 248 / var(--tw-text-opacity, 1));
}
.text-indigo-500 {
  --tw-text-opacity: 1;
  color: rgb(99 102 241 / var(--tw-text-opacity, 1));
}
.text-indigo-600 {
  --tw-text-opacity: 1;
  color: rgb(79 70 229 / var(--tw-text-opacity, 1));
}
.text-indigo-700 {
  --tw-text-opacity: 1;
  color: rgb(67 56 202 / var(--tw-text-opacity, 1));
}
.text-indigo-800 {
  --tw-text-opacity: 1;
  color: rgb(55 48 163 / var(--tw-text-opacity, 1));
}
.text-indigo-900 {
  --tw-text-opacity: 1;
  color: rgb(49 46 129 / var(--tw-text-opacity, 1));
}
.text-orange-100 {
  --tw-text-opacity: 1;
  color: rgb(255 225 214 / var(--tw-text-opacity, 1));
}
.text-orange-200 {
  --tw-text-opacity: 1;
  color: rgb(255 195 173 / var(--tw-text-opacity, 1));
}
.text-orange-400 {
  --tw-text-opacity: 1;
  color: rgb(255 135 92 / var(--tw-text-opacity, 1));
}
.text-orange-500 {
  --tw-text-opacity: 1;
  color: rgb(255 107 53 / var(--tw-text-opacity, 1));
}
.text-orange-600 {
  --tw-text-opacity: 1;
  color: rgb(204 84 41 / var(--tw-text-opacity, 1));
}
.text-orange-700 {
  --tw-text-opacity: 1;
  color: rgb(153 63 31 / var(--tw-text-opacity, 1));
}
.text-orange-800 {
  --tw-text-opacity: 1;
  color: rgb(102 42 20 / var(--tw-text-opacity, 1));
}
.text-orange-900 {
  --tw-text-opacity: 1;
  color: rgb(51 21 10 / var(--tw-text-opacity, 1));
}
.text-orange-950 {
  --tw-text-opacity: 1;
  color: rgb(67 20 7 / var(--tw-text-opacity, 1));
}
.text-pink-500 {
  --tw-text-opacity: 1;
  color: rgb(236 72 153 / var(--tw-text-opacity, 1));
}
.text-pink-600 {
  --tw-text-opacity: 1;
  color: rgb(219 39 119 / var(--tw-text-opacity, 1));
}
.text-pink-700 {
  --tw-text-opacity: 1;
  color: rgb(190 24 93 / var(--tw-text-opacity, 1));
}
.text-purple-100 {
  --tw-text-opacity: 1;
  color: rgb(243 232 255 / var(--tw-text-opacity, 1));
}
.text-purple-200 {
  --tw-text-opacity: 1;
  color: rgb(233 213 255 / var(--tw-text-opacity, 1));
}
.text-purple-300 {
  --tw-text-opacity: 1;
  color: rgb(216 180 254 / var(--tw-text-opacity, 1));
}
.text-purple-500 {
  --tw-text-opacity: 1;
  color: rgb(168 85 247 / var(--tw-text-opacity, 1));
}
.text-purple-600 {
  --tw-text-opacity: 1;
  color: rgb(147 51 234 / var(--tw-text-opacity, 1));
}
.text-purple-700 {
  --tw-text-opacity: 1;
  color: rgb(126 34 206 / var(--tw-text-opacity, 1));
}
.text-purple-800 {
  --tw-text-opacity: 1;
  color: rgb(107 33 168 / var(--tw-text-opacity, 1));
}
.text-purple-900 {
  --tw-text-opacity: 1;
  color: rgb(88 28 135 / var(--tw-text-opacity, 1));
}
.text-red-100 {
  --tw-text-opacity: 1;
  color: rgb(254 226 226 / var(--tw-text-opacity, 1));
}
.text-red-200 {
  --tw-text-opacity: 1;
  color: rgb(254 202 202 / var(--tw-text-opacity, 1));
}
.text-red-300 {
  --tw-text-opacity: 1;
  color: rgb(252 165 165 / var(--tw-text-opacity, 1));
}
.text-red-400 {
  --tw-text-opacity: 1;
  color: rgb(248 113 113 / var(--tw-text-opacity, 1));
}
.text-red-500 {
  --tw-text-opacity: 1;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1));
}
.text-red-600 {
  --tw-text-opacity: 1;
  color: rgb(220 38 38 / var(--tw-text-opacity, 1));
}
.text-red-700 {
  --tw-text-opacity: 1;
  color: rgb(185 28 28 / var(--tw-text-opacity, 1));
}
.text-red-800 {
  --tw-text-opacity: 1;
  color: rgb(153 27 27 / var(--tw-text-opacity, 1));
}
.text-red-900 {
  --tw-text-opacity: 1;
  color: rgb(127 29 29 / var(--tw-text-opacity, 1));
}
.text-rose-500 {
  --tw-text-opacity: 1;
  color: rgb(244 63 94 / var(--tw-text-opacity, 1));
}
.text-rose-600 {
  --tw-text-opacity: 1;
  color: rgb(225 29 72 / var(--tw-text-opacity, 1));
}
.text-rose-700 {
  --tw-text-opacity: 1;
  color: rgb(190 18 60 / var(--tw-text-opacity, 1));
}
.text-rose-800 {
  --tw-text-opacity: 1;
  color: rgb(159 18 57 / var(--tw-text-opacity, 1));
}
.text-rose-900 {
  --tw-text-opacity: 1;
  color: rgb(136 19 55 / var(--tw-text-opacity, 1));
}
.text-sky-100 {
  --tw-text-opacity: 1;
  color: rgb(224 242 254 / var(--tw-text-opacity, 1));
}
.text-sky-300 {
  --tw-text-opacity: 1;
  color: rgb(125 211 252 / var(--tw-text-opacity, 1));
}
.text-sky-500 {
  --tw-text-opacity: 1;
  color: rgb(14 165 233 / var(--tw-text-opacity, 1));
}
.text-sky-600 {
  --tw-text-opacity: 1;
  color: rgb(2 132 199 / var(--tw-text-opacity, 1));
}
.text-sky-700 {
  --tw-text-opacity: 1;
  color: rgb(3 105 161 / var(--tw-text-opacity, 1));
}
.text-sky-800 {
  --tw-text-opacity: 1;
  color: rgb(7 89 133 / var(--tw-text-opacity, 1));
}
.text-sky-800\/80 {
  color: rgb(7 89 133 / 0.8);
}
.text-sky-900 {
  --tw-text-opacity: 1;
  color: rgb(12 74 110 / var(--tw-text-opacity, 1));
}
.text-sky-950 {
  --tw-text-opacity: 1;
  color: rgb(8 47 73 / var(--tw-text-opacity, 1));
}
.text-slate-300 {
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}
.text-slate-400 {
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}
.text-slate-500 {
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}
.text-slate-600 {
  --tw-text-opacity: 1;
  color: rgb(71 85 105 / var(--tw-text-opacity, 1));
}
.text-slate-700 {
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity, 1));
}
.text-slate-800 {
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}
.text-slate-900 {
  --tw-text-opacity: 1;
  color: rgb(15 23 42 / var(--tw-text-opacity, 1));
}
.text-teal-100 {
  --tw-text-opacity: 1;
  color: rgb(204 255 249 / var(--tw-text-opacity, 1));
}
.text-teal-200 {
  --tw-text-opacity: 1;
  color: rgb(153 255 243 / var(--tw-text-opacity, 1));
}
.text-teal-500 {
  --tw-text-opacity: 1;
  color: rgb(0 255 224 / var(--tw-text-opacity, 1));
}
.text-teal-600 {
  --tw-text-opacity: 1;
  color: rgb(0 204 180 / var(--tw-text-opacity, 1));
}
.text-teal-700 {
  --tw-text-opacity: 1;
  color: rgb(0 184 169 / var(--tw-text-opacity, 1));
}
.text-teal-800 {
  --tw-text-opacity: 1;
  color: rgb(0 134 128 / var(--tw-text-opacity, 1));
}
.text-teal-900 {
  --tw-text-opacity: 1;
  color: rgb(0 68 64 / var(--tw-text-opacity, 1));
}
.text-transparent {
  color: transparent;
}
.text-violet-500 {
  --tw-text-opacity: 1;
  color: rgb(139 92 246 / var(--tw-text-opacity, 1));
}
.text-violet-600 {
  --tw-text-opacity: 1;
  color: rgb(124 58 237 / var(--tw-text-opacity, 1));
}
.text-violet-700 {
  --tw-text-opacity: 1;
  color: rgb(109 40 217 / var(--tw-text-opacity, 1));
}
.text-violet-800 {
  --tw-text-opacity: 1;
  color: rgb(91 33 182 / var(--tw-text-opacity, 1));
}
.text-violet-900 {
  --tw-text-opacity: 1;
  color: rgb(76 29 149 / var(--tw-text-opacity, 1));
}
.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
.text-white\/30 {
  color: rgb(255 255 255 / 0.3);
}
.text-white\/65 {
  color: rgb(255 255 255 / 0.65);
}
.text-white\/70 {
  color: rgb(255 255 255 / 0.7);
}
.text-white\/75 {
  color: rgb(255 255 255 / 0.75);
}
.text-white\/80 {
  color: rgb(255 255 255 / 0.8);
}
.text-white\/90 {
  color: rgb(255 255 255 / 0.9);
}
.text-yellow-100 {
  --tw-text-opacity: 1;
  color: rgb(254 249 195 / var(--tw-text-opacity, 1));
}
.text-yellow-200 {
  --tw-text-opacity: 1;
  color: rgb(254 240 138 / var(--tw-text-opacity, 1));
}
.text-yellow-400 {
  --tw-text-opacity: 1;
  color: rgb(250 204 21 / var(--tw-text-opacity, 1));
}
.text-yellow-500 {
  --tw-text-opacity: 1;
  color: rgb(234 179 8 / var(--tw-text-opacity, 1));
}
.text-yellow-600 {
  --tw-text-opacity: 1;
  color: rgb(202 138 4 / var(--tw-text-opacity, 1));
}
.text-yellow-700 {
  --tw-text-opacity: 1;
  color: rgb(161 98 7 / var(--tw-text-opacity, 1));
}
.text-yellow-800 {
  --tw-text-opacity: 1;
  color: rgb(133 77 14 / var(--tw-text-opacity, 1));
}
.text-yellow-900 {
  --tw-text-opacity: 1;
  color: rgb(113 63 18 / var(--tw-text-opacity, 1));
}
.text-opacity-80 {
  --tw-text-opacity: 0.8;
}
.text-opacity-90 {
  --tw-text-opacity: 0.9;
}
.underline {
  text-decoration-line: underline;
}
.line-through {
  text-decoration-line: line-through;
}
.decoration-amber-700 {
  text-decoration-color: #b45309;
}
.underline-offset-2 {
  text-underline-offset: 2px;
}
.underline-offset-4 {
  text-underline-offset: 4px;
}
.placeholder-white\/60::-moz-placeholder {
  color: rgb(255 255 255 / 0.6);
}
.placeholder-white\/60::placeholder {
  color: rgb(255 255 255 / 0.6);
}
.opacity-0 {
  opacity: 0;
}
.opacity-10 {
  opacity: 0.1;
}
.opacity-100 {
  opacity: 1;
}
.opacity-20 {
  opacity: 0.2;
}
.opacity-25 {
  opacity: 0.25;
}
.opacity-30 {
  opacity: 0.3;
}
.opacity-40 {
  opacity: 0.4;
}
.opacity-50 {
  opacity: 0.5;
}
.opacity-55 {
  opacity: 0.55;
}
.opacity-60 {
  opacity: 0.6;
}
.opacity-70 {
  opacity: 0.7;
}
.opacity-75 {
  opacity: 0.75;
}
.opacity-80 {
  opacity: 0.8;
}
.opacity-90 {
  opacity: 0.9;
}
.opacity-\[0\.72\] {
  opacity: 0.72;
}
.shadow {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-2xl {
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_-2px_10px_rgba\(0\2c 0\2c 0\2c 0\.06\)\] {
  --tw-shadow: 0 -2px 10px rgba(0,0,0,0.06);
  --tw-shadow-colored: 0 -2px 10px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_10px_24px_rgba\(29\2c 53\2c 87\2c 0\.22\)\] {
  --tw-shadow: 0 10px 24px rgba(29,53,87,0.22);
  --tw-shadow-colored: 0 10px 24px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_10px_28px_rgba\(29\2c 53\2c 87\2c 0\.25\)\] {
  --tw-shadow: 0 10px 28px rgba(29,53,87,0.25);
  --tw-shadow-colored: 0 10px 28px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_1px_0_0_rgb\(229\2c 231\2c 235\)\] {
  --tw-shadow: 0 1px 0 0 rgb(229,231,235);
  --tw-shadow-colored: 0 1px 0 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_1px_0_rgba\(29\2c 53\2c 87\2c 0\.08\)\] {
  --tw-shadow: 0 1px 0 rgba(29,53,87,0.08);
  --tw-shadow-colored: 0 1px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_2px_8px_rgba\(29\2c 53\2c 87\2c 0\.06\)\] {
  --tw-shadow: 0 2px 8px rgba(29,53,87,0.06);
  --tw-shadow-colored: 0 2px 8px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_4px_12px_rgba\(29\2c 53\2c 87\2c 0\.25\)\] {
  --tw-shadow: 0 4px 12px rgba(29,53,87,0.25);
  --tw-shadow-colored: 0 4px 12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_4px_14px_rgba\(29\2c 53\2c 87\2c 0\.06\)\] {
  --tw-shadow: 0 4px 14px rgba(29,53,87,0.06);
  --tw-shadow-colored: 0 4px 14px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_4px_14px_rgba\(29\2c 53\2c 87\2c 0\.08\)\] {
  --tw-shadow: 0 4px 14px rgba(29,53,87,0.08);
  --tw-shadow-colored: 0 4px 14px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_8px_20px_rgba\(230\2c 57\2c 70\2c 0\.25\)\] {
  --tw-shadow: 0 8px 20px rgba(230,57,70,0.25);
  --tw-shadow-colored: 0 8px 20px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_8px_20px_rgba\(29\2c 53\2c 87\2c 0\.25\)\] {
  --tw-shadow: 0 8px 20px rgba(29,53,87,0.25);
  --tw-shadow-colored: 0 8px 20px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_8px_24px_rgba\(29\2c 53\2c 87\2c 0\.06\)\] {
  --tw-shadow: 0 8px 24px rgba(29,53,87,0.06);
  --tw-shadow-colored: 0 8px 24px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_8px_24px_rgba\(29\2c 53\2c 87\2c 0\.08\)\] {
  --tw-shadow: 0 8px 24px rgba(29,53,87,0.08);
  --tw-shadow-colored: 0 8px 24px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_8px_24px_rgba\(29\2c 53\2c 87\2c 0\.16\)\] {
  --tw-shadow: 0 8px 24px rgba(29,53,87,0.16);
  --tw-shadow-colored: 0 8px 24px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_8px_24px_rgba\(29\2c 53\2c 87\2c 0\.2\)\] {
  --tw-shadow: 0 8px 24px rgba(29,53,87,0.2);
  --tw-shadow-colored: 0 8px 24px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-inner {
  --tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-md {
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-sm {
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-xl {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[\#e63946\]\/30 {
  --tw-shadow-color: rgb(230 57 70 / 0.3);
  --tw-shadow: var(--tw-shadow-colored);
}
.shadow-cyan-600\/25 {
  --tw-shadow-color: rgb(8 145 178 / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}
.outline-none {
  outline: 2px solid transparent;
  outline-offset: 2px;
}
.ring-1 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.ring-2 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.ring-4 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.ring-blue-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(153 185 255 / var(--tw-ring-opacity, 1));
}
.ring-blue-400 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(51 102 255 / var(--tw-ring-opacity, 1));
}
.ring-blue-500 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(0 68 255 / var(--tw-ring-opacity, 1));
}
.ring-green-500 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity, 1));
}
.ring-white\/20 {
  --tw-ring-color: rgb(255 255 255 / 0.2);
}
.ring-yellow-400 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(250 204 21 / var(--tw-ring-opacity, 1));
}
.ring-offset-2 {
  --tw-ring-offset-width: 2px;
}
.drop-shadow-lg {
  --tw-drop-shadow: drop-shadow(0 10px 8px rgb(0 0 0 / 0.04)) drop-shadow(0 4px 3px rgb(0 0 0 / 0.1));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.\!filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow) !important;
}
.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.backdrop-blur {
  --tw-backdrop-blur: blur(8px);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}
.backdrop-blur-sm {
  --tw-backdrop-blur: blur(4px);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}
.transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-\[height\] {
  transition-property: height;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-all {
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-colors {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-opacity {
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-shadow {
  transition-property: box-shadow;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-transform {
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.duration-150 {
  transition-duration: 150ms;
}
.duration-200 {
  transition-duration: 200ms;
}
.duration-300 {
  transition-duration: 300ms;
}
.duration-500 {
  transition-duration: 500ms;
}
.\[-ms-overflow-style\:none\] {
  -ms-overflow-style: none;
}
.\[scrollbar-width\:none\] {
  scrollbar-width: none;
}
/* 預設不自動 smooth，避免手機聚焦表單時捲動與鍵盤行為衝突。
   需要平滑捲動的區塊請在程式裡使用 scrollIntoView({ behavior: 'smooth' }) */
html {
  scroll-behavior: auto;
}
/* Custom transitions */
.page-transition {
  transition: all 0.3s ease-in-out;
}
/* Mapbox: hide default logo + attribution UI (legal copy may still belong in page footer) */
.mapboxgl-ctrl-logo,
.mapboxgl-ctrl-attrib,
.mapboxgl-ctrl-attrib-inner {
  display: none !important;
}
/* ===== 移动端触控优化 ===== */
/* 防止点击时的高亮效果 */
* {
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}
/* 优化滚动性能 */
* {
  -webkit-overflow-scrolling: touch;
}
/* 触控设备优化 - 增大点击区域 */
@media (hover: none) and (pointer: coarse) {
  /* 确保按钮和链接有足够的点击区域 (至少 44x44px) */
  button:not(.no-touch-optimize),
  a:not(.no-touch-optimize) {
    min-height: 44px;
    min-width: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  
  /* 表单输入框优化 */
  input,
  textarea,
  select {
    font-size: 16px !important; /* 防止 iOS Safari 自动缩放 */
    min-height: 44px;
  }
  
  /* 移除 hover 效果，因为触控设备不需要 */
  *:hover {
    /* 保持原始状态，不应用 hover 效果 */
  }
}
/* 触控反馈动画 */
@media (hover: none) {
  button:active,
  a:active {
    transform: scale(0.97);
    transition: transform 0.1s ease;
  }
}
/* 文字选择优化 */
.no-select {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
/* 图片拖拽优化 */
img {
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
}
/* 安全区域适配 (iPhone X 等带刘海屏设备) */
@supports (padding: max(0px)) {
  body {
    padding-left: max(0px, env(safe-area-inset-left));
    padding-right: max(0px, env(safe-area-inset-right));
  }
}
/* 手機底欄：避開 Android 三鍵／手勢導覽列 */
@media (max-width: 767px) {
  .fixnow-app-bottom-nav {
    padding-bottom: var(--fixnow-bottom-inset);
  }

  .fixnow-app-shell > main.fixnow-main-with-bottom-nav {
    padding-bottom: calc(var(--fixnow-bottom-nav-h) + var(--fixnow-bottom-inset));
  }

}
/* 移动端字体大小优化 */
@media (max-width: 640px) {
  html {
    font-size: 14px; /* 基础字号稍小 */
  }
  
  /* 确保标题在小屏幕上不会太大 */
  h1 {
    font-size: 1.5rem;
    line-height: 2rem;
  }
  
  h2 {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}
/* 横屏警告 (可选) */
@media (max-width: 768px) and (orientation: landscape) {
  body::before {
    content: '';
    /* 可以在这里添加横屏提示 */
  }
}
/* 优化模态框在移动端的显示 */
@media (max-width: 640px) {
  .modal-content {
    max-height: 90vh;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
}
.marker\:content-none *::marker {
  --tw-content: none;
  content: var(--tw-content);
}
.marker\:content-none::marker {
  --tw-content: none;
  content: var(--tw-content);
}
.file\:mr-2::file-selector-button {
  margin-right: 0.5rem;
}
.file\:mr-3::file-selector-button {
  margin-right: 0.75rem;
}
.file\:mr-4::file-selector-button {
  margin-right: 1rem;
}
.file\:rounded-full::file-selector-button {
  border-radius: 9999px;
}
.file\:rounded-lg::file-selector-button {
  border-radius: 0.5rem;
}
.file\:rounded-md::file-selector-button {
  border-radius: 0.375rem;
}
.file\:border::file-selector-button {
  border-width: 1px;
}
.file\:border-0::file-selector-button {
  border-width: 0px;
}
.file\:border-gray-300::file-selector-button {
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}
.file\:bg-blue-50::file-selector-button {
  --tw-bg-opacity: 1;
  background-color: rgb(230 237 255 / var(--tw-bg-opacity, 1));
}
.file\:bg-emerald-50::file-selector-button {
  --tw-bg-opacity: 1;
  background-color: rgb(236 253 245 / var(--tw-bg-opacity, 1));
}
.file\:bg-white::file-selector-button {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}
.file\:px-3::file-selector-button {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.file\:px-4::file-selector-button {
  padding-left: 1rem;
  padding-right: 1rem;
}
.file\:py-1\.5::file-selector-button {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}
.file\:py-2::file-selector-button {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.file\:text-sm::file-selector-button {
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.file\:text-xs::file-selector-button {
  font-size: 0.75rem;
  line-height: 1rem;
}
.file\:font-medium::file-selector-button {
  font-weight: 500;
}
.file\:font-semibold::file-selector-button {
  font-weight: 600;
}
.file\:text-blue-700::file-selector-button {
  --tw-text-opacity: 1;
  color: rgb(0 34 153 / var(--tw-text-opacity, 1));
}
.file\:text-emerald-700::file-selector-button {
  --tw-text-opacity: 1;
  color: rgb(4 120 87 / var(--tw-text-opacity, 1));
}
.file\:text-gray-700::file-selector-button {
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}
.placeholder\:text-\[\#274c77\]\/50::-moz-placeholder {
  color: rgb(39 76 119 / 0.5);
}
.placeholder\:text-\[\#274c77\]\/50::placeholder {
  color: rgb(39 76 119 / 0.5);
}
.placeholder\:text-gray-400::-moz-placeholder {
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}
.placeholder\:text-gray-400::placeholder {
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}
.placeholder\:text-gray-500::-moz-placeholder {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}
.placeholder\:text-gray-500::placeholder {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}
.after\:absolute::after {
  content: var(--tw-content);
  position: absolute;
}
.after\:left-\[2px\]::after {
  content: var(--tw-content);
  left: 2px;
}
.after\:top-\[2px\]::after {
  content: var(--tw-content);
  top: 2px;
}
.after\:h-5::after {
  content: var(--tw-content);
  height: 1.25rem;
}
.after\:w-5::after {
  content: var(--tw-content);
  width: 1.25rem;
}
.after\:translate-x-full::after {
  content: var(--tw-content);
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.after\:rounded-full::after {
  content: var(--tw-content);
  border-radius: 9999px;
}
.after\:border::after {
  content: var(--tw-content);
  border-width: 1px;
}
.after\:border-gray-300::after {
  content: var(--tw-content);
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}
.after\:bg-white::after {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}
.after\:transition-all::after {
  content: var(--tw-content);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.after\:content-\[\'\'\]::after {
  --tw-content: '';
  content: var(--tw-content);
}
.first\:pl-0:first-child {
  padding-left: 0px;
}
.last\:border-0:last-child {
  border-width: 0px;
}
.last\:border-b-0:last-child {
  border-bottom-width: 0px;
}
.last\:border-l-0:last-child {
  border-left-width: 0px;
}
.last\:pb-0:last-child {
  padding-bottom: 0px;
}
.last\:pr-0:last-child {
  padding-right: 0px;
}
.open\:bg-amber-50[open] {
  --tw-bg-opacity: 1;
  background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));
}
.hover\:-translate-y-1:hover {
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.hover\:translate-y-0:hover {
  --tw-translate-y: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.hover\:scale-105:hover {
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.hover\:scale-110:hover {
  --tw-scale-x: 1.1;
  --tw-scale-y: 1.1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.hover\:border-amber-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(252 211 77 / var(--tw-border-opacity, 1));
}
.hover\:border-blue-200:hover {
  --tw-border-opacity: 1;
  border-color: rgb(153 185 255 / var(--tw-border-opacity, 1));
}
.hover\:border-blue-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(102 149 255 / var(--tw-border-opacity, 1));
}
.hover\:border-blue-400:hover {
  --tw-border-opacity: 1;
  border-color: rgb(51 102 255 / var(--tw-border-opacity, 1));
}
.hover\:border-blue-500:hover {
  --tw-border-opacity: 1;
  border-color: rgb(0 68 255 / var(--tw-border-opacity, 1));
}
.hover\:border-cyan-200:hover {
  --tw-border-opacity: 1;
  border-color: rgb(165 243 252 / var(--tw-border-opacity, 1));
}
.hover\:border-cyan-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(103 232 249 / var(--tw-border-opacity, 1));
}
.hover\:border-cyan-400:hover {
  --tw-border-opacity: 1;
  border-color: rgb(34 211 238 / var(--tw-border-opacity, 1));
}
.hover\:border-emerald-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(110 231 183 / var(--tw-border-opacity, 1));
}
.hover\:border-gray-200:hover {
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
}
.hover\:border-gray-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}
.hover\:border-gray-400:hover {
  --tw-border-opacity: 1;
  border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));
}
.hover\:border-gray-500:hover {
  --tw-border-opacity: 1;
  border-color: rgb(107 114 128 / var(--tw-border-opacity, 1));
}
.hover\:border-green-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(134 239 172 / var(--tw-border-opacity, 1));
}
.hover\:border-green-500\/50:hover {
  border-color: rgb(34 197 94 / 0.5);
}
.hover\:border-indigo-200:hover {
  --tw-border-opacity: 1;
  border-color: rgb(199 210 254 / var(--tw-border-opacity, 1));
}
.hover\:border-indigo-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(165 180 252 / var(--tw-border-opacity, 1));
}
.hover\:border-indigo-400:hover {
  --tw-border-opacity: 1;
  border-color: rgb(129 140 248 / var(--tw-border-opacity, 1));
}
.hover\:border-orange-200:hover {
  --tw-border-opacity: 1;
  border-color: rgb(255 195 173 / var(--tw-border-opacity, 1));
}
.hover\:border-orange-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(255 165 133 / var(--tw-border-opacity, 1));
}
.hover\:border-orange-500\/50:hover {
  border-color: rgb(255 107 53 / 0.5);
}
.hover\:border-pink-200:hover {
  --tw-border-opacity: 1;
  border-color: rgb(251 207 232 / var(--tw-border-opacity, 1));
}
.hover\:border-pink-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(249 168 212 / var(--tw-border-opacity, 1));
}
.hover\:border-purple-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(216 180 254 / var(--tw-border-opacity, 1));
}
.hover\:border-red-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(252 165 165 / var(--tw-border-opacity, 1));
}
.hover\:border-sky-200:hover {
  --tw-border-opacity: 1;
  border-color: rgb(186 230 253 / var(--tw-border-opacity, 1));
}
.hover\:border-teal-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(102 255 237 / var(--tw-border-opacity, 1));
}
.hover\:border-violet-200:hover {
  --tw-border-opacity: 1;
  border-color: rgb(221 214 254 / var(--tw-border-opacity, 1));
}
.hover\:border-yellow-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(253 224 71 / var(--tw-border-opacity, 1));
}
.hover\:bg-\[\#274c77\]:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(39 76 119 / var(--tw-bg-opacity, 1));
}
.hover\:bg-\[\#c1121f\]:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(193 18 31 / var(--tw-bg-opacity, 1));
}
.hover\:bg-\[\#e8b730\]:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(232 183 48 / var(--tw-bg-opacity, 1));
}
.hover\:bg-\[\#eef2f8\]:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(238 242 248 / var(--tw-bg-opacity, 1));
}
.hover\:bg-amber-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(254 243 199 / var(--tw-bg-opacity, 1));
}
.hover\:bg-amber-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(253 230 138 / var(--tw-bg-opacity, 1));
}
.hover\:bg-amber-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));
}
.hover\:bg-amber-600:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(217 119 6 / var(--tw-bg-opacity, 1));
}
.hover\:bg-amber-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(180 83 9 / var(--tw-bg-opacity, 1));
}
.hover\:bg-amber-800:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(146 64 14 / var(--tw-bg-opacity, 1));
}
.hover\:bg-blue-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(204 220 255 / var(--tw-bg-opacity, 1));
}
.hover\:bg-blue-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(153 185 255 / var(--tw-bg-opacity, 1));
}
.hover\:bg-blue-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(230 237 255 / var(--tw-bg-opacity, 1));
}
.hover\:bg-blue-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(0 34 153 / var(--tw-bg-opacity, 1));
}
.hover\:bg-cyan-400:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(34 211 238 / var(--tw-bg-opacity, 1));
}
.hover\:bg-cyan-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(236 254 255 / var(--tw-bg-opacity, 1));
}
.hover\:bg-cyan-50\/50:hover {
  background-color: rgb(236 254 255 / 0.5);
}
.hover\:bg-cyan-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(14 116 144 / var(--tw-bg-opacity, 1));
}
.hover\:bg-emerald-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(209 250 229 / var(--tw-bg-opacity, 1));
}
.hover\:bg-emerald-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(236 253 245 / var(--tw-bg-opacity, 1));
}
.hover\:bg-emerald-600:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(5 150 105 / var(--tw-bg-opacity, 1));
}
.hover\:bg-emerald-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(4 120 87 / var(--tw-bg-opacity, 1));
}
.hover\:bg-gray-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}
.hover\:bg-gray-100\/90:hover {
  background-color: rgb(243 244 246 / 0.9);
}
.hover\:bg-gray-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}
.hover\:bg-gray-300:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
}
.hover\:bg-gray-400:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));
}
.hover\:bg-gray-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}
.hover\:bg-gray-50\/50:hover {
  background-color: rgb(249 250 251 / 0.5);
}
.hover\:bg-gray-50\/80:hover {
  background-color: rgb(249 250 251 / 0.8);
}
.hover\:bg-gray-600:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(75 85 99 / var(--tw-bg-opacity, 1));
}
.hover\:bg-gray-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
}
.hover\:bg-gray-800:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
}
.hover\:bg-green-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(220 252 231 / var(--tw-bg-opacity, 1));
}
.hover\:bg-green-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(187 247 208 / var(--tw-bg-opacity, 1));
}
.hover\:bg-green-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(240 253 244 / var(--tw-bg-opacity, 1));
}
.hover\:bg-green-600:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(22 163 74 / var(--tw-bg-opacity, 1));
}
.hover\:bg-green-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(21 128 61 / var(--tw-bg-opacity, 1));
}
.hover\:bg-green-800:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(22 101 52 / var(--tw-bg-opacity, 1));
}
.hover\:bg-indigo-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(199 210 254 / var(--tw-bg-opacity, 1));
}
.hover\:bg-indigo-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(238 242 255 / var(--tw-bg-opacity, 1));
}
.hover\:bg-indigo-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(67 56 202 / var(--tw-bg-opacity, 1));
}
.hover\:bg-orange-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 225 214 / var(--tw-bg-opacity, 1));
}
.hover\:bg-orange-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 195 173 / var(--tw-bg-opacity, 1));
}
.hover\:bg-orange-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 240 235 / var(--tw-bg-opacity, 1));
}
.hover\:bg-orange-600:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(204 84 41 / var(--tw-bg-opacity, 1));
}
.hover\:bg-orange-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(153 63 31 / var(--tw-bg-opacity, 1));
}
.hover\:bg-purple-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(243 232 255 / var(--tw-bg-opacity, 1));
}
.hover\:bg-purple-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(233 213 255 / var(--tw-bg-opacity, 1));
}
.hover\:bg-purple-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(250 245 255 / var(--tw-bg-opacity, 1));
}
.hover\:bg-purple-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(126 34 206 / var(--tw-bg-opacity, 1));
}
.hover\:bg-red-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1));
}
.hover\:bg-red-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(254 202 202 / var(--tw-bg-opacity, 1));
}
.hover\:bg-red-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));
}
.hover\:bg-red-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(185 28 28 / var(--tw-bg-opacity, 1));
}
.hover\:bg-red-800:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(153 27 27 / var(--tw-bg-opacity, 1));
}
.hover\:bg-rose-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 228 230 / var(--tw-bg-opacity, 1));
}
.hover\:bg-rose-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(254 205 211 / var(--tw-bg-opacity, 1));
}
.hover\:bg-rose-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 241 242 / var(--tw-bg-opacity, 1));
}
.hover\:bg-rose-600:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(225 29 72 / var(--tw-bg-opacity, 1));
}
.hover\:bg-rose-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(190 18 60 / var(--tw-bg-opacity, 1));
}
.hover\:bg-sky-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(224 242 254 / var(--tw-bg-opacity, 1));
}
.hover\:bg-sky-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(240 249 255 / var(--tw-bg-opacity, 1));
}
.hover\:bg-sky-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(3 105 161 / var(--tw-bg-opacity, 1));
}
.hover\:bg-slate-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1));
}
.hover\:bg-slate-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(226 232 240 / var(--tw-bg-opacity, 1));
}
.hover\:bg-slate-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
}
.hover\:bg-slate-50\/80:hover {
  background-color: rgb(248 250 252 / 0.8);
}
.hover\:bg-slate-800:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));
}
.hover\:bg-teal-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(0 184 169 / var(--tw-bg-opacity, 1));
}
.hover\:bg-violet-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(237 233 254 / var(--tw-bg-opacity, 1));
}
.hover\:bg-white:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}
.hover\:bg-white\/10:hover {
  background-color: rgb(255 255 255 / 0.1);
}
.hover\:bg-white\/15:hover {
  background-color: rgb(255 255 255 / 0.15);
}
.hover\:bg-white\/20:hover {
  background-color: rgb(255 255 255 / 0.2);
}
.hover\:bg-yellow-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(254 249 195 / var(--tw-bg-opacity, 1));
}
.hover\:bg-yellow-200:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(254 240 138 / var(--tw-bg-opacity, 1));
}
.hover\:bg-yellow-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(254 252 232 / var(--tw-bg-opacity, 1));
}
.hover\:bg-yellow-600:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(202 138 4 / var(--tw-bg-opacity, 1));
}
.hover\:bg-yellow-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(161 98 7 / var(--tw-bg-opacity, 1));
}
.hover\:bg-opacity-100:hover {
  --tw-bg-opacity: 1;
}
.hover\:bg-opacity-20:hover {
  --tw-bg-opacity: 0.2;
}
.hover\:bg-opacity-70:hover {
  --tw-bg-opacity: 0.7;
}
.hover\:bg-gradient-to-r:hover {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
.hover\:from-blue-100:hover {
  --tw-gradient-from: #ccdcff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(204 220 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-blue-50:hover {
  --tw-gradient-from: #e6edff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(230 237 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-blue-700:hover {
  --tw-gradient-from: #002299 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 34 153 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-gray-100:hover {
  --tw-gradient-from: #f3f4f6 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(243 244 246 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-green-700:hover {
  --tw-gradient-from: #15803d var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(21 128 61 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-orange-100:hover {
  --tw-gradient-from: #ffe1d6 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 225 214 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-orange-700:hover {
  --tw-gradient-from: #993f1f var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(153 63 31 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-purple-700:hover {
  --tw-gradient-from: #7e22ce var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(126 34 206 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-teal-100:hover {
  --tw-gradient-from: #ccfff9 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(204 255 249 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-yellow-100:hover {
  --tw-gradient-from: #fef9c3 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(254 249 195 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-yellow-500:hover {
  --tw-gradient-from: #eab308 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(234 179 8 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-yellow-600:hover {
  --tw-gradient-from: #ca8a04 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(202 138 4 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:to-blue-200:hover {
  --tw-gradient-to: #99b9ff var(--tw-gradient-to-position);
}
.hover\:to-blue-700:hover {
  --tw-gradient-to: #002299 var(--tw-gradient-to-position);
}
.hover\:to-blue-800:hover {
  --tw-gradient-to: #001166 var(--tw-gradient-to-position);
}
.hover\:to-emerald-700:hover {
  --tw-gradient-to: #047857 var(--tw-gradient-to-position);
}
.hover\:to-gray-200:hover {
  --tw-gradient-to: #e5e7eb var(--tw-gradient-to-position);
}
.hover\:to-green-800:hover {
  --tw-gradient-to: #166534 var(--tw-gradient-to-position);
}
.hover\:to-indigo-700:hover {
  --tw-gradient-to: #4338ca var(--tw-gradient-to-position);
}
.hover\:to-orange-200:hover {
  --tw-gradient-to: #ffc3ad var(--tw-gradient-to-position);
}
.hover\:to-orange-600:hover {
  --tw-gradient-to: #cc5429 var(--tw-gradient-to-position);
}
.hover\:to-orange-800:hover {
  --tw-gradient-to: #662a14 var(--tw-gradient-to-position);
}
.hover\:to-teal-200:hover {
  --tw-gradient-to: #99fff3 var(--tw-gradient-to-position);
}
.hover\:to-white:hover {
  --tw-gradient-to: #fff var(--tw-gradient-to-position);
}
.hover\:to-yellow-200:hover {
  --tw-gradient-to: #fef08a var(--tw-gradient-to-position);
}
.hover\:text-amber-700:hover {
  --tw-text-opacity: 1;
  color: rgb(180 83 9 / var(--tw-text-opacity, 1));
}
.hover\:text-amber-900:hover {
  --tw-text-opacity: 1;
  color: rgb(120 53 15 / var(--tw-text-opacity, 1));
}
.hover\:text-amber-950:hover {
  --tw-text-opacity: 1;
  color: rgb(69 26 3 / var(--tw-text-opacity, 1));
}
.hover\:text-blue-100:hover {
  --tw-text-opacity: 1;
  color: rgb(204 220 255 / var(--tw-text-opacity, 1));
}
.hover\:text-blue-500:hover {
  --tw-text-opacity: 1;
  color: rgb(0 68 255 / var(--tw-text-opacity, 1));
}
.hover\:text-blue-600:hover {
  --tw-text-opacity: 1;
  color: rgb(0 51 204 / var(--tw-text-opacity, 1));
}
.hover\:text-blue-700:hover {
  --tw-text-opacity: 1;
  color: rgb(0 34 153 / var(--tw-text-opacity, 1));
}
.hover\:text-blue-800:hover {
  --tw-text-opacity: 1;
  color: rgb(0 17 102 / var(--tw-text-opacity, 1));
}
.hover\:text-blue-900:hover {
  --tw-text-opacity: 1;
  color: rgb(0 0 51 / var(--tw-text-opacity, 1));
}
.hover\:text-cyan-700:hover {
  --tw-text-opacity: 1;
  color: rgb(14 116 144 / var(--tw-text-opacity, 1));
}
.hover\:text-cyan-800:hover {
  --tw-text-opacity: 1;
  color: rgb(21 94 117 / var(--tw-text-opacity, 1));
}
.hover\:text-cyan-900:hover {
  --tw-text-opacity: 1;
  color: rgb(22 78 99 / var(--tw-text-opacity, 1));
}
.hover\:text-emerald-600:hover {
  --tw-text-opacity: 1;
  color: rgb(5 150 105 / var(--tw-text-opacity, 1));
}
.hover\:text-emerald-700:hover {
  --tw-text-opacity: 1;
  color: rgb(4 120 87 / var(--tw-text-opacity, 1));
}
.hover\:text-emerald-800:hover {
  --tw-text-opacity: 1;
  color: rgb(6 95 70 / var(--tw-text-opacity, 1));
}
.hover\:text-gray-500:hover {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}
.hover\:text-gray-600:hover {
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}
.hover\:text-gray-700:hover {
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}
.hover\:text-gray-800:hover {
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
}
.hover\:text-gray-900:hover {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}
.hover\:text-green-600:hover {
  --tw-text-opacity: 1;
  color: rgb(22 163 74 / var(--tw-text-opacity, 1));
}
.hover\:text-green-700:hover {
  --tw-text-opacity: 1;
  color: rgb(21 128 61 / var(--tw-text-opacity, 1));
}
.hover\:text-green-800:hover {
  --tw-text-opacity: 1;
  color: rgb(22 101 52 / var(--tw-text-opacity, 1));
}
.hover\:text-green-900:hover {
  --tw-text-opacity: 1;
  color: rgb(20 83 45 / var(--tw-text-opacity, 1));
}
.hover\:text-indigo-700:hover {
  --tw-text-opacity: 1;
  color: rgb(67 56 202 / var(--tw-text-opacity, 1));
}
.hover\:text-indigo-800:hover {
  --tw-text-opacity: 1;
  color: rgb(55 48 163 / var(--tw-text-opacity, 1));
}
.hover\:text-indigo-900:hover {
  --tw-text-opacity: 1;
  color: rgb(49 46 129 / var(--tw-text-opacity, 1));
}
.hover\:text-orange-600:hover {
  --tw-text-opacity: 1;
  color: rgb(204 84 41 / var(--tw-text-opacity, 1));
}
.hover\:text-orange-700:hover {
  --tw-text-opacity: 1;
  color: rgb(153 63 31 / var(--tw-text-opacity, 1));
}
.hover\:text-orange-800:hover {
  --tw-text-opacity: 1;
  color: rgb(102 42 20 / var(--tw-text-opacity, 1));
}
.hover\:text-orange-900:hover {
  --tw-text-opacity: 1;
  color: rgb(51 21 10 / var(--tw-text-opacity, 1));
}
.hover\:text-pink-700:hover {
  --tw-text-opacity: 1;
  color: rgb(190 24 93 / var(--tw-text-opacity, 1));
}
.hover\:text-purple-600:hover {
  --tw-text-opacity: 1;
  color: rgb(147 51 234 / var(--tw-text-opacity, 1));
}
.hover\:text-purple-700:hover {
  --tw-text-opacity: 1;
  color: rgb(126 34 206 / var(--tw-text-opacity, 1));
}
.hover\:text-purple-800:hover {
  --tw-text-opacity: 1;
  color: rgb(107 33 168 / var(--tw-text-opacity, 1));
}
.hover\:text-purple-900:hover {
  --tw-text-opacity: 1;
  color: rgb(88 28 135 / var(--tw-text-opacity, 1));
}
.hover\:text-red-500:hover {
  --tw-text-opacity: 1;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1));
}
.hover\:text-red-600:hover {
  --tw-text-opacity: 1;
  color: rgb(220 38 38 / var(--tw-text-opacity, 1));
}
.hover\:text-red-700:hover {
  --tw-text-opacity: 1;
  color: rgb(185 28 28 / var(--tw-text-opacity, 1));
}
.hover\:text-red-800:hover {
  --tw-text-opacity: 1;
  color: rgb(153 27 27 / var(--tw-text-opacity, 1));
}
.hover\:text-red-900:hover {
  --tw-text-opacity: 1;
  color: rgb(127 29 29 / var(--tw-text-opacity, 1));
}
.hover\:text-rose-700:hover {
  --tw-text-opacity: 1;
  color: rgb(190 18 60 / var(--tw-text-opacity, 1));
}
.hover\:text-rose-800:hover {
  --tw-text-opacity: 1;
  color: rgb(159 18 57 / var(--tw-text-opacity, 1));
}
.hover\:text-sky-100:hover {
  --tw-text-opacity: 1;
  color: rgb(224 242 254 / var(--tw-text-opacity, 1));
}
.hover\:text-sky-700:hover {
  --tw-text-opacity: 1;
  color: rgb(3 105 161 / var(--tw-text-opacity, 1));
}
.hover\:text-teal-600:hover {
  --tw-text-opacity: 1;
  color: rgb(0 204 180 / var(--tw-text-opacity, 1));
}
.hover\:text-teal-800:hover {
  --tw-text-opacity: 1;
  color: rgb(0 134 128 / var(--tw-text-opacity, 1));
}
.hover\:text-teal-900:hover {
  --tw-text-opacity: 1;
  color: rgb(0 68 64 / var(--tw-text-opacity, 1));
}
.hover\:text-violet-700:hover {
  --tw-text-opacity: 1;
  color: rgb(109 40 217 / var(--tw-text-opacity, 1));
}
.hover\:text-white:hover {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
.hover\:text-yellow-200:hover {
  --tw-text-opacity: 1;
  color: rgb(254 240 138 / var(--tw-text-opacity, 1));
}
.hover\:text-yellow-400:hover {
  --tw-text-opacity: 1;
  color: rgb(250 204 21 / var(--tw-text-opacity, 1));
}
.hover\:text-yellow-600:hover {
  --tw-text-opacity: 1;
  color: rgb(202 138 4 / var(--tw-text-opacity, 1));
}
.hover\:text-yellow-700:hover {
  --tw-text-opacity: 1;
  color: rgb(161 98 7 / var(--tw-text-opacity, 1));
}
.hover\:text-yellow-800:hover {
  --tw-text-opacity: 1;
  color: rgb(133 77 14 / var(--tw-text-opacity, 1));
}
.hover\:text-yellow-900:hover {
  --tw-text-opacity: 1;
  color: rgb(113 63 18 / var(--tw-text-opacity, 1));
}
.hover\:underline:hover {
  text-decoration-line: underline;
}
.hover\:opacity-100:hover {
  opacity: 1;
}
.hover\:opacity-70:hover {
  opacity: 0.7;
}
.hover\:opacity-75:hover {
  opacity: 0.75;
}
.hover\:opacity-80:hover {
  opacity: 0.8;
}
.hover\:opacity-90:hover {
  opacity: 0.9;
}
.hover\:shadow-lg:hover {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.hover\:shadow-md:hover {
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.hover\:shadow-sm:hover {
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.hover\:shadow-xl:hover {
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.hover\:ring-2:hover {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.hover\:ring-blue-500:hover {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(0 68 255 / var(--tw-ring-opacity, 1));
}
.hover\:file\:bg-blue-100::file-selector-button:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(204 220 255 / var(--tw-bg-opacity, 1));
}
.hover\:file\:bg-emerald-100::file-selector-button:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(209 250 229 / var(--tw-bg-opacity, 1));
}
.hover\:file\:bg-gray-50::file-selector-button:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}
.focus\:border-\[\#1d3557\]:focus {
  --tw-border-opacity: 1;
  border-color: rgb(29 53 87 / var(--tw-border-opacity, 1));
}
.focus\:border-amber-500:focus {
  --tw-border-opacity: 1;
  border-color: rgb(245 158 11 / var(--tw-border-opacity, 1));
}
.focus\:border-blue-500:focus {
  --tw-border-opacity: 1;
  border-color: rgb(0 68 255 / var(--tw-border-opacity, 1));
}
.focus\:border-emerald-500:focus {
  --tw-border-opacity: 1;
  border-color: rgb(16 185 129 / var(--tw-border-opacity, 1));
}
.focus\:border-gray-900:focus {
  --tw-border-opacity: 1;
  border-color: rgb(17 24 39 / var(--tw-border-opacity, 1));
}
.focus\:border-green-500:focus {
  --tw-border-opacity: 1;
  border-color: rgb(34 197 94 / var(--tw-border-opacity, 1));
}
.focus\:border-purple-500:focus {
  --tw-border-opacity: 1;
  border-color: rgb(168 85 247 / var(--tw-border-opacity, 1));
}
.focus\:border-rose-500:focus {
  --tw-border-opacity: 1;
  border-color: rgb(244 63 94 / var(--tw-border-opacity, 1));
}
.focus\:border-teal-500:focus {
  --tw-border-opacity: 1;
  border-color: rgb(0 255 224 / var(--tw-border-opacity, 1));
}
.focus\:border-transparent:focus {
  border-color: transparent;
}
.focus\:bg-gray-50:focus {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}
.focus\:outline-none:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
}
.focus\:ring-0:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.focus\:ring-1:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.focus\:ring-2:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.focus\:ring-\[\#1d3557\]\/15:focus {
  --tw-ring-color: rgb(29 53 87 / 0.15);
}
.focus\:ring-\[\#1d3557\]\/20:focus {
  --tw-ring-color: rgb(29 53 87 / 0.2);
}
.focus\:ring-amber-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(245 158 11 / var(--tw-ring-opacity, 1));
}
.focus\:ring-blue-200:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(153 185 255 / var(--tw-ring-opacity, 1));
}
.focus\:ring-blue-300:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(102 149 255 / var(--tw-ring-opacity, 1));
}
.focus\:ring-blue-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(0 68 255 / var(--tw-ring-opacity, 1));
}
.focus\:ring-blue-500\/20:focus {
  --tw-ring-color: rgb(0 68 255 / 0.2);
}
.focus\:ring-blue-500\/30:focus {
  --tw-ring-color: rgb(0 68 255 / 0.3);
}
.focus\:ring-emerald-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(16 185 129 / var(--tw-ring-opacity, 1));
}
.focus\:ring-gray-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity, 1));
}
.focus\:ring-gray-900:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(17 24 39 / var(--tw-ring-opacity, 1));
}
.focus\:ring-green-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity, 1));
}
.focus\:ring-indigo-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity, 1));
}
.focus\:ring-orange-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(255 107 53 / var(--tw-ring-opacity, 1));
}
.focus\:ring-purple-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1));
}
.focus\:ring-red-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(239 68 68 / var(--tw-ring-opacity, 1));
}
.focus\:ring-rose-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(244 63 94 / var(--tw-ring-opacity, 1));
}
.focus\:ring-teal-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(0 255 224 / var(--tw-ring-opacity, 1));
}
.focus\:ring-white\/30:focus {
  --tw-ring-color: rgb(255 255 255 / 0.3);
}
.focus\:ring-yellow-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(234 179 8 / var(--tw-ring-opacity, 1));
}
.focus\:ring-offset-2:focus {
  --tw-ring-offset-width: 2px;
}
.focus-visible\:ring-2:focus-visible {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.focus-visible\:ring-blue-500:focus-visible {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(0 68 255 / var(--tw-ring-opacity, 1));
}
.focus-visible\:ring-cyan-500:focus-visible {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(6 182 212 / var(--tw-ring-opacity, 1));
}
.focus-visible\:ring-white:focus-visible {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity, 1));
}
.focus-visible\:ring-offset-2:focus-visible {
  --tw-ring-offset-width: 2px;
}
.focus-visible\:ring-offset-slate-900:focus-visible {
  --tw-ring-offset-color: #0f172a;
}
.active\:scale-90:active {
  --tw-scale-x: .9;
  --tw-scale-y: .9;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.active\:scale-95:active {
  --tw-scale-x: .95;
  --tw-scale-y: .95;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.active\:scale-\[0\.98\]:active {
  --tw-scale-x: 0.98;
  --tw-scale-y: 0.98;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.active\:scale-\[0\.99\]:active {
  --tw-scale-x: 0.99;
  --tw-scale-y: 0.99;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.active\:bg-\[\#274c77\]:active {
  --tw-bg-opacity: 1;
  background-color: rgb(39 76 119 / var(--tw-bg-opacity, 1));
}
.active\:bg-\[\#c1121f\]:active {
  --tw-bg-opacity: 1;
  background-color: rgb(193 18 31 / var(--tw-bg-opacity, 1));
}
.active\:bg-\[\#e8b730\]:active {
  --tw-bg-opacity: 1;
  background-color: rgb(232 183 48 / var(--tw-bg-opacity, 1));
}
.active\:bg-blue-100:active {
  --tw-bg-opacity: 1;
  background-color: rgb(204 220 255 / var(--tw-bg-opacity, 1));
}
.active\:bg-blue-700:active {
  --tw-bg-opacity: 1;
  background-color: rgb(0 34 153 / var(--tw-bg-opacity, 1));
}
.active\:bg-blue-800:active {
  --tw-bg-opacity: 1;
  background-color: rgb(0 17 102 / var(--tw-bg-opacity, 1));
}
.active\:bg-gray-100:active {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}
.active\:bg-gray-300:active {
  --tw-bg-opacity: 1;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
}
.active\:bg-gray-50:active {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}
.active\:bg-red-50:active {
  --tw-bg-opacity: 1;
  background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));
}
.active\:bg-red-800:active {
  --tw-bg-opacity: 1;
  background-color: rgb(153 27 27 / var(--tw-bg-opacity, 1));
}
.active\:bg-slate-100:active {
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1));
}
.active\:bg-slate-200\/60:active {
  background-color: rgb(226 232 240 / 0.6);
}
.active\:bg-slate-50:active {
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
}
.active\:bg-white\/10:active {
  background-color: rgb(255 255 255 / 0.1);
}
.active\:bg-white\/20:active {
  background-color: rgb(255 255 255 / 0.2);
}
.active\:text-blue-800:active {
  --tw-text-opacity: 1;
  color: rgb(0 17 102 / var(--tw-text-opacity, 1));
}
.active\:text-gray-700:active {
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}
.active\:text-gray-800:active {
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
}
.active\:opacity-50:active {
  opacity: 0.5;
}
.disabled\:pointer-events-none:disabled {
  pointer-events: none;
}
.disabled\:cursor-default:disabled {
  cursor: default;
}
.disabled\:cursor-not-allowed:disabled {
  cursor: not-allowed;
}
.disabled\:bg-blue-300:disabled {
  --tw-bg-opacity: 1;
  background-color: rgb(102 149 255 / var(--tw-bg-opacity, 1));
}
.disabled\:bg-gray-100:disabled {
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}
.disabled\:bg-gray-300:disabled {
  --tw-bg-opacity: 1;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
}
.disabled\:bg-gray-400:disabled {
  --tw-bg-opacity: 1;
  background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));
}
.disabled\:bg-green-300:disabled {
  --tw-bg-opacity: 1;
  background-color: rgb(134 239 172 / var(--tw-bg-opacity, 1));
}
.disabled\:bg-orange-300:disabled {
  --tw-bg-opacity: 1;
  background-color: rgb(255 165 133 / var(--tw-bg-opacity, 1));
}
.disabled\:text-gray-400:disabled {
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}
.disabled\:opacity-40:disabled {
  opacity: 0.4;
}
.disabled\:opacity-50:disabled {
  opacity: 0.5;
}
.disabled\:opacity-60:disabled {
  opacity: 0.6;
}
.disabled\:hover\:bg-blue-600:hover:disabled {
  --tw-bg-opacity: 1;
  background-color: rgb(0 51 204 / var(--tw-bg-opacity, 1));
}
.disabled\:hover\:bg-transparent:hover:disabled {
  background-color: transparent;
}
.group:hover .group-hover\:visible {
  visibility: visible;
}
.group:hover .group-hover\:scale-110 {
  --tw-scale-x: 1.1;
  --tw-scale-y: 1.1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:scale-150 {
  --tw-scale-x: 1.5;
  --tw-scale-y: 1.5;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:border-green-300 {
  --tw-border-opacity: 1;
  border-color: rgb(134 239 172 / var(--tw-border-opacity, 1));
}
.group:hover .group-hover\:border-orange-300 {
  --tw-border-opacity: 1;
  border-color: rgb(255 165 133 / var(--tw-border-opacity, 1));
}
.group:hover .group-hover\:bg-blue-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(204 220 255 / var(--tw-bg-opacity, 1));
}
.group:hover .group-hover\:bg-blue-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(153 185 255 / var(--tw-bg-opacity, 1));
}
.group:hover .group-hover\:bg-gray-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}
.group:hover .group-hover\:bg-white\/70 {
  background-color: rgb(255 255 255 / 0.7);
}
.group:hover .group-hover\:bg-opacity-10 {
  --tw-bg-opacity: 0.1;
}
.group:hover .group-hover\:bg-opacity-20 {
  --tw-bg-opacity: 0.2;
}
.group:hover .group-hover\:from-blue-600 {
  --tw-gradient-from: #0033cc var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 51 204 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.group:hover .group-hover\:to-blue-500 {
  --tw-gradient-to: #0044ff var(--tw-gradient-to-position);
}
.group:hover .group-hover\:text-blue-600 {
  --tw-text-opacity: 1;
  color: rgb(0 51 204 / var(--tw-text-opacity, 1));
}
.group:hover .group-hover\:text-blue-700 {
  --tw-text-opacity: 1;
  color: rgb(0 34 153 / var(--tw-text-opacity, 1));
}
.group:hover .group-hover\:text-blue-900 {
  --tw-text-opacity: 1;
  color: rgb(0 0 51 / var(--tw-text-opacity, 1));
}
.group:hover .group-hover\:text-gray-700 {
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}
.group:hover .group-hover\:text-gray-800 {
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
}
.group:hover .group-hover\:opacity-100 {
  opacity: 1;
}
.peer:checked ~ .peer-checked\:bg-blue-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(0 51 204 / var(--tw-bg-opacity, 1));
}
.peer:checked ~ .peer-checked\:after\:translate-x-full::after {
  content: var(--tw-content);
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.peer:checked ~ .peer-checked\:after\:border-white::after {
  content: var(--tw-content);
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}
.peer:focus ~ .peer-focus\:outline-none {
  outline: 2px solid transparent;
  outline-offset: 2px;
}
.peer:focus ~ .peer-focus\:ring-4 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.peer:focus ~ .peer-focus\:ring-blue-300 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(102 149 255 / var(--tw-ring-opacity, 1));
}
.dark\:divide-gray-700:is(.dark *) > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-opacity: 1;
  border-color: rgb(55 65 81 / var(--tw-divide-opacity, 1));
}
.dark\:border-blue-300:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgb(102 149 255 / var(--tw-border-opacity, 1));
}
.dark\:border-gray-600:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgb(75 85 99 / var(--tw-border-opacity, 1));
}
.dark\:border-gray-700:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgb(55 65 81 / var(--tw-border-opacity, 1));
}
.dark\:border-gray-800:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgb(31 41 55 / var(--tw-border-opacity, 1));
}
.dark\:border-red-900\/50:is(.dark *) {
  border-color: rgb(127 29 29 / 0.5);
}
.dark\:border-slate-600:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgb(71 85 105 / var(--tw-border-opacity, 1));
}
.dark\:border-slate-700:is(.dark *) {
  --tw-border-opacity: 1;
  border-color: rgb(51 65 85 / var(--tw-border-opacity, 1));
}
.dark\:bg-\[\#0f172a\]:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(15 23 42 / var(--tw-bg-opacity, 1));
}
.dark\:bg-\[\#3d5a80\]:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(61 90 128 / var(--tw-bg-opacity, 1));
}
.dark\:bg-amber-400\/15:is(.dark *) {
  background-color: rgb(251 191 36 / 0.15);
}
.dark\:bg-black\/30:is(.dark *) {
  background-color: rgb(0 0 0 / 0.3);
}
.dark\:bg-blue-400\/15:is(.dark *) {
  background-color: rgb(51 102 255 / 0.15);
}
.dark\:bg-blue-900\/20:is(.dark *) {
  background-color: rgb(0 0 51 / 0.2);
}
.dark\:bg-emerald-400\/15:is(.dark *) {
  background-color: rgb(52 211 153 / 0.15);
}
.dark\:bg-gray-200:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}
.dark\:bg-gray-600:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(75 85 99 / var(--tw-bg-opacity, 1));
}
.dark\:bg-gray-700:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
}
.dark\:bg-gray-700\/40:is(.dark *) {
  background-color: rgb(55 65 81 / 0.4);
}
.dark\:bg-gray-800:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
}
.dark\:bg-gray-900:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(17 24 39 / var(--tw-bg-opacity, 1));
}
.dark\:bg-gray-900\/50:is(.dark *) {
  background-color: rgb(17 24 39 / 0.5);
}
.dark\:bg-green-900\/20:is(.dark *) {
  background-color: rgb(20 83 45 / 0.2);
}
.dark\:bg-indigo-400\/15:is(.dark *) {
  background-color: rgb(129 140 248 / 0.15);
}
.dark\:bg-orange-400\/15:is(.dark *) {
  background-color: rgb(255 135 92 / 0.15);
}
.dark\:bg-red-950\/40:is(.dark *) {
  background-color: rgb(69 10 10 / 0.4);
}
.dark\:bg-rose-400\/15:is(.dark *) {
  background-color: rgb(251 113 133 / 0.15);
}
.dark\:bg-sky-400\/15:is(.dark *) {
  background-color: rgb(56 189 248 / 0.15);
}
.dark\:bg-slate-700:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(51 65 85 / var(--tw-bg-opacity, 1));
}
.dark\:bg-slate-800:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));
}
.dark\:bg-slate-900:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(15 23 42 / var(--tw-bg-opacity, 1));
}
.dark\:bg-white\/10:is(.dark *) {
  background-color: rgb(255 255 255 / 0.1);
}
.dark\:from-gray-600:is(.dark *) {
  --tw-gradient-from: #4b5563 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(75 85 99 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.dark\:to-gray-700:is(.dark *) {
  --tw-gradient-to: #374151 var(--tw-gradient-to-position);
}
.dark\:text-amber-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(252 211 77 / var(--tw-text-opacity, 1));
}
.dark\:text-blue-200:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(153 185 255 / var(--tw-text-opacity, 1));
}
.dark\:text-blue-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(102 149 255 / var(--tw-text-opacity, 1));
}
.dark\:text-blue-400:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(51 102 255 / var(--tw-text-opacity, 1));
}
.dark\:text-emerald-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(110 231 183 / var(--tw-text-opacity, 1));
}
.dark\:text-gray-100:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(243 244 246 / var(--tw-text-opacity, 1));
}
.dark\:text-gray-200:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(229 231 235 / var(--tw-text-opacity, 1));
}
.dark\:text-gray-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}
.dark\:text-gray-400:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}
.dark\:text-gray-500:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}
.dark\:text-gray-900:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}
.dark\:text-green-200:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(187 247 208 / var(--tw-text-opacity, 1));
}
.dark\:text-green-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(134 239 172 / var(--tw-text-opacity, 1));
}
.dark\:text-indigo-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(165 180 252 / var(--tw-text-opacity, 1));
}
.dark\:text-orange-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(255 165 133 / var(--tw-text-opacity, 1));
}
.dark\:text-red-200:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(254 202 202 / var(--tw-text-opacity, 1));
}
.dark\:text-red-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(252 165 165 / var(--tw-text-opacity, 1));
}
.dark\:text-rose-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(253 164 175 / var(--tw-text-opacity, 1));
}
.dark\:text-sky-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(125 211 252 / var(--tw-text-opacity, 1));
}
.dark\:text-slate-100:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(241 245 249 / var(--tw-text-opacity, 1));
}
.dark\:text-slate-200:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
}
.dark\:text-slate-300:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}
.dark\:text-slate-400:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}
.dark\:text-slate-500:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}
.dark\:text-white:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
.dark\:hover\:bg-gray-600:hover:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(75 85 99 / var(--tw-bg-opacity, 1));
}
.dark\:hover\:bg-gray-700:hover:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
}
.dark\:hover\:bg-gray-700\/80:hover:is(.dark *) {
  background-color: rgb(55 65 81 / 0.8);
}
.dark\:hover\:bg-gray-800:hover:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
}
.dark\:hover\:bg-slate-700:hover:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(51 65 85 / var(--tw-bg-opacity, 1));
}
.dark\:hover\:text-blue-300:hover:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(102 149 255 / var(--tw-text-opacity, 1));
}
.dark\:hover\:text-blue-400:hover:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(51 102 255 / var(--tw-text-opacity, 1));
}
.dark\:hover\:text-gray-300:hover:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}
.dark\:hover\:text-red-400:hover:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(248 113 113 / var(--tw-text-opacity, 1));
}
.dark\:hover\:text-white:hover:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
@media not all and (min-width: 768px) {
  .max-md\:fixed {
    position: fixed;
  }
  .max-md\:left-2 {
    left: 0.5rem;
  }
  .max-md\:right-2 {
    right: 0.5rem;
  }
  .max-md\:top-\[calc\(4rem\+env\(safe-area-inset-top\2c 0px\)\+8px\)\] {
    top: calc(4rem + env(safe-area-inset-top,0px) + 8px);
  }
  .max-md\:z-\[60\] {
    z-index: 60;
  }
  .max-md\:hidden {
    display: none;
  }
  .max-md\:max-h-\[min\(85dvh\2c 560px\)\] {
    max-height: min(85dvh,560px);
  }
  .max-md\:max-h-\[min\(88dvh\2c 680px\)\] {
    max-height: min(88dvh,680px);
  }
  .max-md\:w-auto {
    width: auto;
  }
  .max-md\:max-w-\[52vw\] {
    max-width: 52vw;
  }
  .max-md\:px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media (min-width: 640px) {
  .sm\:invisible {
    visibility: hidden;
  }
  .sm\:col-span-1 {
    grid-column: span 1 / span 1;
  }
  .sm\:col-span-2 {
    grid-column: span 2 / span 2;
  }
  .sm\:mx-4 {
    margin-left: 1rem;
    margin-right: 1rem;
  }
  .sm\:mb-0 {
    margin-bottom: 0px;
  }
  .sm\:mb-1 {
    margin-bottom: 0.25rem;
  }
  .sm\:mb-2 {
    margin-bottom: 0.5rem;
  }
  .sm\:mb-3 {
    margin-bottom: 0.75rem;
  }
  .sm\:mb-4 {
    margin-bottom: 1rem;
  }
  .sm\:mb-6 {
    margin-bottom: 1.5rem;
  }
  .sm\:mb-8 {
    margin-bottom: 2rem;
  }
  .sm\:ml-2 {
    margin-left: 0.5rem;
  }
  .sm\:ml-4 {
    margin-left: 1rem;
  }
  .sm\:mr-1 {
    margin-right: 0.25rem;
  }
  .sm\:mr-2 {
    margin-right: 0.5rem;
  }
  .sm\:mr-4 {
    margin-right: 1rem;
  }
  .sm\:mt-0 {
    margin-top: 0px;
  }
  .sm\:mt-1 {
    margin-top: 0.25rem;
  }
  .sm\:mt-6 {
    margin-top: 1.5rem;
  }
  .sm\:mt-8 {
    margin-top: 2rem;
  }
  .sm\:block {
    display: block;
  }
  .sm\:inline {
    display: inline;
  }
  .sm\:flex {
    display: flex;
  }
  .sm\:inline-flex {
    display: inline-flex;
  }
  .sm\:table-cell {
    display: table-cell;
  }
  .sm\:hidden {
    display: none;
  }
  .sm\:h-12 {
    height: 3rem;
  }
  .sm\:h-16 {
    height: 4rem;
  }
  .sm\:h-4 {
    height: 1rem;
  }
  .sm\:h-5 {
    height: 1.25rem;
  }
  .sm\:h-6 {
    height: 1.5rem;
  }
  .sm\:h-64 {
    height: 16rem;
  }
  .sm\:h-8 {
    height: 2rem;
  }
  .sm\:h-96 {
    height: 24rem;
  }
  .sm\:h-\[320px\] {
    height: 320px;
  }
  .sm\:h-\[360px\] {
    height: 360px;
  }
  .sm\:max-h-\[80vh\] {
    max-height: 80vh;
  }
  .sm\:min-h-0 {
    min-height: 0px;
  }
  .sm\:min-h-\[96px\] {
    min-height: 96px;
  }
  .sm\:w-12 {
    width: 3rem;
  }
  .sm\:w-16 {
    width: 4rem;
  }
  .sm\:w-4 {
    width: 1rem;
  }
  .sm\:w-5 {
    width: 1.25rem;
  }
  .sm\:w-6 {
    width: 1.5rem;
  }
  .sm\:w-64 {
    width: 16rem;
  }
  .sm\:w-8 {
    width: 2rem;
  }
  .sm\:w-80 {
    width: 20rem;
  }
  .sm\:w-auto {
    width: auto;
  }
  .sm\:min-w-0 {
    min-width: 0px;
  }
  .sm\:min-w-\[9rem\] {
    min-width: 9rem;
  }
  .sm\:max-w-lg {
    max-width: 32rem;
  }
  .sm\:max-w-sm {
    max-width: 24rem;
  }
  .sm\:flex-none {
    flex: none;
  }
  .sm\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .sm\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .sm\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .sm\:flex-row {
    flex-direction: row;
  }
  .sm\:flex-wrap {
    flex-wrap: wrap;
  }
  .sm\:items-start {
    align-items: flex-start;
  }
  .sm\:items-end {
    align-items: flex-end;
  }
  .sm\:items-center {
    align-items: center;
  }
  .sm\:justify-start {
    justify-content: flex-start;
  }
  .sm\:justify-between {
    justify-content: space-between;
  }
  .sm\:gap-2 {
    gap: 0.5rem;
  }
  .sm\:gap-3 {
    gap: 0.75rem;
  }
  .sm\:gap-4 {
    gap: 1rem;
  }
  .sm\:gap-6 {
    gap: 1.5rem;
  }
  .sm\:gap-x-2 {
    -moz-column-gap: 0.5rem;
         column-gap: 0.5rem;
  }
  .sm\:gap-x-4 {
    -moz-column-gap: 1rem;
         column-gap: 1rem;
  }
  .sm\:gap-y-2 {
    row-gap: 0.5rem;
  }
  .sm\:space-x-4 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(1rem * var(--tw-space-x-reverse));
    margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
  }
  .sm\:space-y-1 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
  }
  .sm\:space-y-4 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(1rem * var(--tw-space-y-reverse));
  }
  .sm\:self-auto {
    align-self: auto;
  }
  .sm\:rounded-2xl {
    border-radius: 1rem;
  }
  .sm\:rounded-md {
    border-radius: 0.375rem;
  }
  .sm\:border-l {
    border-left-width: 1px;
  }
  .sm\:border-t-0 {
    border-top-width: 0px;
  }
  .sm\:p-10 {
    padding: 2.5rem;
  }
  .sm\:p-12 {
    padding: 3rem;
  }
  .sm\:p-2 {
    padding: 0.5rem;
  }
  .sm\:p-3 {
    padding: 0.75rem;
  }
  .sm\:p-4 {
    padding: 1rem;
  }
  .sm\:p-5 {
    padding: 1.25rem;
  }
  .sm\:p-6 {
    padding: 1.5rem;
  }
  .sm\:p-8 {
    padding: 2rem;
  }
  .sm\:px-1 {
    padding-left: 0.25rem;
    padding-right: 0.25rem;
  }
  .sm\:px-2 {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .sm\:px-3 {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
  .sm\:px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .sm\:px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .sm\:px-8 {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .sm\:py-1 {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
  }
  .sm\:py-1\.5 {
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
  }
  .sm\:py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
  .sm\:py-16 {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
  .sm\:py-2 {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  .sm\:py-24 {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
  .sm\:py-3 {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
  }
  .sm\:py-4 {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
  .sm\:py-8 {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  .sm\:pb-2 {
    padding-bottom: 0.5rem;
  }
  .sm\:pb-8 {
    padding-bottom: 2rem;
  }
  .sm\:text-left {
    text-align: left;
  }
  .sm\:text-right {
    text-align: right;
  }
  .sm\:text-2xl {
    font-size: 1.5rem;
    line-height: 2rem;
  }
  .sm\:text-3xl {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }
  .sm\:text-4xl {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
  .sm\:text-5xl {
    font-size: 3rem;
    line-height: 1;
  }
  .sm\:text-6xl {
    font-size: 3.75rem;
    line-height: 1;
  }
  .sm\:text-\[10px\] {
    font-size: 10px;
  }
  .sm\:text-base {
    font-size: 1rem;
    line-height: 1.5rem;
  }
  .sm\:text-lg {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
  .sm\:text-sm {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
  .sm\:text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
  .sm\:text-xs {
    font-size: 0.75rem;
    line-height: 1rem;
  }
}
@media (min-width: 768px) {
  .md\:absolute {
    position: absolute;
  }
  .md\:left-2\.5 {
    left: 0.625rem;
  }
  .md\:left-auto {
    left: auto;
  }
  .md\:right-0 {
    right: 0px;
  }
  .md\:right-6 {
    right: 1.5rem;
  }
  .md\:top-full {
    top: 100%;
  }
  .md\:z-50 {
    z-index: 50;
  }
  .md\:col-span-1 {
    grid-column: span 1 / span 1;
  }
  .md\:col-span-2 {
    grid-column: span 2 / span 2;
  }
  .md\:col-span-3 {
    grid-column: span 3 / span 3;
  }
  .md\:mb-0 {
    margin-bottom: 0px;
  }
  .md\:mb-4 {
    margin-bottom: 1rem;
  }
  .md\:ml-0 {
    margin-left: 0px;
  }
  .md\:ml-6 {
    margin-left: 1.5rem;
  }
  .md\:mt-10 {
    margin-top: 2.5rem;
  }
  .md\:mt-2 {
    margin-top: 0.5rem;
  }
  .md\:mt-6 {
    margin-top: 1.5rem;
  }
  .md\:line-clamp-none {
    overflow: visible;
    display: block;
    -webkit-box-orient: horizontal;
    -webkit-line-clamp: none;
  }
  .md\:inline {
    display: inline;
  }
  .md\:flex {
    display: flex;
  }
  .md\:inline-flex {
    display: inline-flex;
  }
  .md\:table-cell {
    display: table-cell;
  }
  .md\:hidden {
    display: none;
  }
  .md\:h-3\.5 {
    height: 0.875rem;
  }
  .md\:h-\[70vh\] {
    height: 70vh;
  }
  .md\:max-h-\[min\(92vh\2c 720px\)\] {
    max-height: min(92vh,720px);
  }
  .md\:min-h-0 {
    min-height: 0px;
  }
  .md\:w-3\.5 {
    width: 0.875rem;
  }
  .md\:w-96 {
    width: 24rem;
  }
  .md\:w-\[min\(100vw-2rem\2c 28rem\)\] {
    width: min(100vw - 2rem,28rem);
  }
  .md\:w-auto {
    width: auto;
  }
  .md\:min-w-0 {
    min-width: 0px;
  }
  .md\:min-w-\[11rem\] {
    min-width: 11rem;
  }
  .md\:max-w-md {
    max-width: 28rem;
  }
  .md\:max-w-none {
    max-width: none;
  }
  .md\:flex-1 {
    flex: 1 1 0%;
  }
  .md\:shrink-0 {
    flex-shrink: 0;
  }
  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .md\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .md\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .md\:grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .md\:flex-row {
    flex-direction: row;
  }
  .md\:items-start {
    align-items: flex-start;
  }
  .md\:items-center {
    align-items: center;
  }
  .md\:justify-start {
    justify-content: flex-start;
  }
  .md\:justify-end {
    justify-content: flex-end;
  }
  .md\:justify-between {
    justify-content: space-between;
  }
  .md\:gap-6 {
    gap: 1.5rem;
  }
  .md\:gap-8 {
    gap: 2rem;
  }
  .md\:space-y-3 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
  }
  .md\:truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .md\:whitespace-nowrap {
    white-space: nowrap;
  }
  .md\:break-normal {
    overflow-wrap: normal;
    word-break: normal;
  }
  .md\:border-0 {
    border-width: 0px;
  }
  .md\:border-t-0 {
    border-top-width: 0px;
  }
  .md\:bg-transparent {
    background-color: transparent;
  }
  .md\:p-0 {
    padding: 0px;
  }
  .md\:px-0 {
    padding-left: 0px;
    padding-right: 0px;
  }
  .md\:py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
  .md\:py-2 {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  .md\:pb-0 {
    padding-bottom: 0px;
  }
  .md\:pl-8 {
    padding-left: 2rem;
  }
  .md\:pt-0 {
    padding-top: 0px;
  }
  .md\:pt-6 {
    padding-top: 1.5rem;
  }
  .md\:text-5xl {
    font-size: 3rem;
    line-height: 1;
  }
  .md\:text-xs {
    font-size: 0.75rem;
    line-height: 1rem;
  }
  .md\:hover\:bg-transparent:hover {
    background-color: transparent;
  }
  .md\:hover\:underline:hover {
    text-decoration-line: underline;
  }
}
@media (min-width: 1024px) {
  .lg\:col-span-1 {
    grid-column: span 1 / span 1;
  }
  .lg\:col-span-2 {
    grid-column: span 2 / span 2;
  }
  .lg\:col-span-3 {
    grid-column: span 3 / span 3;
  }
  .lg\:mb-6 {
    margin-bottom: 1.5rem;
  }
  .lg\:mt-0 {
    margin-top: 0px;
  }
  .lg\:block {
    display: block;
  }
  .lg\:inline {
    display: inline;
  }
  .lg\:flex {
    display: flex;
  }
  .lg\:inline-flex {
    display: inline-flex;
  }
  .lg\:hidden {
    display: none;
  }
  .lg\:min-h-0 {
    min-height: 0px;
  }
  .lg\:min-h-\[44px\] {
    min-height: 44px;
  }
  .lg\:w-48 {
    width: 12rem;
  }
  .lg\:w-64 {
    width: 16rem;
  }
  .lg\:w-72 {
    width: 18rem;
  }
  .lg\:w-auto {
    width: auto;
  }
  .lg\:min-w-\[44px\] {
    min-width: 44px;
  }
  .lg\:max-w-2xl {
    max-width: 42rem;
  }
  .lg\:max-w-md {
    max-width: 28rem;
  }
  .lg\:flex-shrink-0 {
    flex-shrink: 0;
  }
  .lg\:shrink-0 {
    flex-shrink: 0;
  }
  .lg\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .lg\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .lg\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .lg\:grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .lg\:grid-rows-1 {
    grid-template-rows: repeat(1, minmax(0, 1fr));
  }
  .lg\:flex-row {
    flex-direction: row;
  }
  .lg\:items-start {
    align-items: flex-start;
  }
  .lg\:items-end {
    align-items: flex-end;
  }
  .lg\:items-center {
    align-items: center;
  }
  .lg\:justify-end {
    justify-content: flex-end;
  }
  .lg\:justify-between {
    justify-content: space-between;
  }
  .lg\:gap-2 {
    gap: 0.5rem;
  }
  .lg\:gap-4 {
    gap: 1rem;
  }
  .lg\:gap-5 {
    gap: 1.25rem;
  }
  .lg\:gap-6 {
    gap: 1.5rem;
  }
  .lg\:space-x-2 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(0.5rem * var(--tw-space-x-reverse));
    margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
  }
  .lg\:space-x-4 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(1rem * var(--tw-space-x-reverse));
    margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
  }
  .lg\:rounded-lg {
    border-radius: 0.5rem;
  }
  .lg\:rounded-xl {
    border-radius: 0.75rem;
  }
  .lg\:border-0 {
    border-width: 0px;
  }
  .lg\:bg-transparent {
    background-color: transparent;
  }
  .lg\:p-2 {
    padding: 0.5rem;
  }
  .lg\:p-4 {
    padding: 1rem;
  }
  .lg\:px-0 {
    padding-left: 0px;
    padding-right: 0px;
  }
  .lg\:px-10 {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
  .lg\:px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .lg\:px-8 {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .lg\:py-0 {
    padding-top: 0px;
    padding-bottom: 0px;
  }
  .lg\:py-2\.5 {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
  }
  .lg\:py-28 {
    padding-top: 7rem;
    padding-bottom: 7rem;
  }
  .lg\:py-6 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
  .lg\:pl-0 {
    padding-left: 0px;
  }
  .lg\:text-right {
    text-align: right;
  }
  .lg\:text-2xl {
    font-size: 1.5rem;
    line-height: 2rem;
  }
  .lg\:text-5xl {
    font-size: 3rem;
    line-height: 1;
  }
  .lg\:text-sm {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
  .lg\:leading-normal {
    line-height: 1.5;
  }
  .lg\:shadow-lg {
    --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  }
}
@media (min-width: 1280px) {
  .xl\:col-span-2 {
    grid-column: span 2 / span 2;
  }
  .xl\:ml-5 {
    margin-left: 1.25rem;
  }
  .xl\:mt-0 {
    margin-top: 0px;
  }
  .xl\:w-auto {
    width: auto;
  }
  .xl\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .xl\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .xl\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .xl\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .xl\:flex-row {
    flex-direction: row;
  }
  .xl\:items-start {
    align-items: flex-start;
  }
  .xl\:gap-6 {
    gap: 1.5rem;
  }
  .xl\:gap-8 {
    gap: 2rem;
  }
  .xl\:border-0 {
    border-width: 0px;
  }
  .xl\:border-t-0 {
    border-top-width: 0px;
  }
  .xl\:bg-transparent {
    background-color: transparent;
  }
  .xl\:p-0 {
    padding: 0px;
  }
  .xl\:px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .xl\:pt-0 {
    padding-top: 0px;
  }
}
@media (min-width: 1536px) {
  .\32xl\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .\32xl\:px-16 {
    padding-left: 4rem;
    padding-right: 4rem;
  }
}
@media print {
  .print\:hidden {
    display: none;
  }
}
.\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker {
  display: none;
}
.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar {
  display: none;
}
@media(min-height:740px) {
  .\[\@media\(min-height\:740px\)\]\:my-6 {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
  }
  .\[\@media\(min-height\:740px\)\]\:my-8 {
    margin-top: 2rem;
    margin-bottom: 2rem;
  }
  .\[\@media\(min-height\:740px\)\]\:h-56 {
    height: 14rem;
  }
  .\[\@media\(min-height\:740px\)\]\:h-72 {
    height: 18rem;
  }
  .\[\@media\(min-height\:740px\)\]\:w-56 {
    width: 14rem;
  }
  .\[\@media\(min-height\:740px\)\]\:w-72 {
    width: 18rem;
  }
}
/**
 * Capacitor 原生 App 專用樣式：只在 html.native-app 生效，網頁版不受影響。
 * 深色模式只有首頁、頂欄、底欄換深色（home-app-style.css、app-shell-dark.css），其他頁沿用這裡的淺色 App 樣式。
 */
html.native-app {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-coral-hover: #c1121f;
  --app-bg: #f4f6fb;
  --app-surface: #ffffff;
  --app-radius-lg: 1.25rem;
  --app-radius-xl: 1.5rem;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background-color: var(--app-bg);
}

html.native-app body {
  background-color: var(--app-bg);
}

html.native-app .fixnow-app-shell {
  background-color: var(--app-bg);
}

html.native-app .fixnow-app-shell > main {
  background-color: var(--app-bg);
}

/* App 不顯示網站頁尾（平板寬度也一樣） */
html.native-app .fixnow-app-shell footer {
  display: none !important;
}

/* 頂欄：深藍 App 風 */
html.native-app .fixnow-app-header {
  background: linear-gradient(135deg, var(--app-navy) 0%, var(--app-navy-light) 100%) !important;
  border-bottom: none !important;
  box-shadow: 0 4px 16px rgba(29, 53, 87, 0.2);
  padding-top: env(safe-area-inset-top, 0px);
  /* 安全區與頂欄同色，避免系統 splash／app 名稱區塊露出 */
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
}

html.native-app .fixnow-app-header::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: calc(-1 * env(safe-area-inset-top, 0px));
  height: env(safe-area-inset-top, 0px);
  background: linear-gradient(135deg, var(--app-navy) 0%, var(--app-navy-light) 100%);
  pointer-events: none;
}

html.native-app .fixnow-app-header .text-gray-900,
html.native-app .fixnow-app-header .text-gray-700,
html.native-app .fixnow-app-header .text-gray-600 {
  color: #f8fafc !important;
}

html.native-app .fixnow-app-header a.text-gray-700:hover,
html.native-app .fixnow-app-header button.text-gray-700:hover {
  color: #fecaca !important;
}

html.native-app .fixnow-app-header .border-gray-200 {
  border-color: rgba(255, 255, 255, 0.25) !important;
}

html.native-app .fixnow-app-header .bg-gray-200 {
  background-color: rgba(255, 255, 255, 0.2) !important;
}

html.native-app .fixnow-app-header a.bg-blue-600 {
  background-color: var(--app-coral) !important;
}

html.native-app .fixnow-app-header a.bg-blue-600:hover {
  background-color: var(--app-coral-hover) !important;
}

html.native-app .fixnow-app-header .min-h-16 {
  min-height: 3.25rem;
}

html.native-app .fixnow-app-shell.fixnow-shell-auth-native {
  min-height: 100dvh;
  min-height: 100vh;
  background-color: var(--app-bg) !important;
}

html.native-app .fixnow-app-shell.fixnow-shell-auth-native > main {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

/* 底欄 */
html.native-app .fixnow-app-bottom-nav {
  background: var(--app-surface) !important;
  border-top: 1px solid rgba(29, 53, 87, 0.08) !important;
  box-shadow: 0 -4px 20px rgba(29, 53, 87, 0.06) !important;
}

html.native-app .fixnow-app-bottom-nav a.text-blue-600 {
  color: var(--app-navy) !important;
}

html.native-app .fixnow-app-bottom-nav a.text-blue-600 .bg-blue-600,
html.native-app .fixnow-app-bottom-nav a.text-blue-600 span.absolute.bg-blue-600 {
  background-color: var(--app-coral) !important;
}

html.native-app .fixnow-app-bottom-nav a.text-gray-500 {
  color: #64748b !important;
}

html.native-app .fixnow-app-bottom-nav .h-16 {
  height: 4.25rem;
}

/* 服務追蹤頁 */
html.native-app .fixnow-page-tracking {
  background: var(--app-bg) !important;
}

html.native-app .fixnow-tracking-top-bar {
  background: linear-gradient(135deg, var(--app-navy) 0%, var(--app-navy-light) 100%) !important;
  box-shadow: 0 4px 16px rgba(29, 53, 87, 0.25) !important;
  padding-top: calc(0.75rem + env(safe-area-inset-top, 0px)) !important;
}

html.native-app .fixnow-tracking-top-bar h2,
html.native-app .fixnow-tracking-top-bar button {
  color: #fff !important;
}

html.native-app .fixnow-tracking-top-bar button:hover {
  background-color: rgba(255, 255, 255, 0.12) !important;
}

html.native-app .fixnow-tracking-top-bar .text-gray-600 {
  color: rgba(255, 255, 255, 0.85) !important;
}

html.native-app .fixnow-tracking-top-bar .bg-blue-50 {
  background: rgba(255, 255, 255, 0.15) !important;
  backdrop-filter: blur(8px);
}

/* 追蹤頁：上方地圖、下方卡片依序排列，整頁隨視窗捲動 */
html.native-app .fixnow-page-tracking {
  height: auto !important;
  min-height: 100vh;
}

html.native-app .fixnow-tracking-map-wrap {
  flex: none !important;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding-bottom: 1rem;
}

html.native-app .fixnow-tracking-map-wrap > :first-child {
  height: 42vh !important;
  min-height: 260px;
  flex-shrink: 0;
  order: 0;
  border-radius: 0 0 var(--app-radius-xl) var(--app-radius-xl);
  overflow: hidden;
}

html.native-app .fixnow-tracking-panel {
  position: static !important;
  inset: auto !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 0.75rem;
  border: none !important;
  border-radius: var(--app-radius-xl) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html.native-app .fixnow-tracking-panel--craftsman {
  display: block !important;
  order: 1;
  margin-top: -2.5rem;
  position: relative !important;
  z-index: 5;
}

html.native-app .fixnow-tracking-panel--status { order: 2; }
html.native-app .fixnow-tracking-panel--progress { order: 3; padding: 1rem !important; }
html.native-app .fixnow-tracking-panel--payment { order: 4; }
html.native-app .fixnow-tracking-panel--verify { order: 5; }
html.native-app .fixnow-tracking-panel--log { order: 6; }

html.native-app .fixnow-tracking-top-bar .bg-green-500 {
  background-color: var(--app-coral) !important;
}

html.native-app .fixnow-tracking-top-bar .hover\:bg-green-600:hover {
  background-color: var(--app-coral-hover) !important;
}

html.native-app .btn-primary {
  background-color: var(--app-coral) !important;
  border-radius: 9999px;
}

html.native-app .btn-primary:hover {
  background-color: var(--app-coral-hover) !important;
}

/* 頂欄不是固定定位，頁面最外層為固定頂欄預留的 pt-16 在 App 裡只會變成空白 */
html.native-app .fixnow-app-shell > main > div > .pt-16 {
  padding-top: 1rem !important;
}

/* ===== 共用頁面樣式（最外層有 fixnow-app-page 的頁面） ===== */
html.native-app .fixnow-app-page {
  background: var(--app-bg) !important;
}

html.native-app .fixnow-app-page :is(h1, h2).text-3xl {
  font-size: 1.5rem;
  line-height: 2rem;
  color: var(--app-navy);
}

html.native-app
  .fixnow-app-page
  .bg-white:is(.shadow, .shadow-sm, .shadow-md, .shadow-lg):is(.rounded, .rounded-md, .rounded-lg, .rounded-xl) {
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
  border-color: transparent !important;
}

html.native-app .fixnow-app-page :is(button, a).bg-blue-600:not(:disabled) {
  background-color: var(--app-coral) !important;
  border-radius: 0.875rem !important;
}

html.native-app .fixnow-app-page :is(button, a).text-blue-600 {
  color: var(--app-navy-light) !important;
}

html.native-app
  .fixnow-app-page
  :is(input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='file']), select, textarea) {
  border-radius: 0.875rem;
}

/* 固定在底部導覽列上方的主要按鈕 */
html.native-app .fixnow-sticky-cta {
  position: fixed !important;
  left: 1rem;
  right: 1rem;
  bottom: calc(4.75rem + env(safe-area-inset-bottom, 0px));
  z-index: 80;
  justify-content: center;
  padding: 0.95rem 1.5rem !important;
  border-radius: 1rem !important;
  font-size: 1rem;
  font-weight: 700;
  background-color: var(--app-coral) !important;
  box-shadow: 0 10px 24px rgba(230, 57, 70, 0.35);
}

/* 工匠／公司詳情 */
html.native-app .fixnow-page-detail {
  padding-bottom: 5rem;
}

html.native-app .fixnow-detail-header {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

html.native-app .fixnow-page-detail .container.py-8 {
  padding-top: 0.5rem;
}

html.native-app .fixnow-page-detail .lg\:col-span-2 > :first-child {
  background: linear-gradient(135deg, var(--app-navy) 0%, #3d5a80 100%) !important;
  color: #fff;
}

html.native-app .fixnow-page-detail .lg\:col-span-2 > :first-child :is(.text-gray-900, .text-blue-600, .text-green-600) {
  color: #fff !important;
}

html.native-app .fixnow-page-detail .lg\:col-span-2 > :first-child .text-gray-600 {
  color: rgba(255, 255, 255, 0.8) !important;
}

html.native-app .fixnow-page-detail .lg\:col-span-2 > :first-child img {
  border: 3px solid #fff;
}

/* 登入／註冊 */
html.native-app .fixnow-page-auth {
  align-items: flex-start !important;
  padding-top: 0 !important;
  background: linear-gradient(
    180deg,
    var(--app-navy) 0,
    var(--app-navy-light) 13rem,
    var(--app-bg) 13rem
  ) !important;
}

html.native-app .fixnow-page-auth > div {
  margin-top: 2.5rem;
}

html.native-app .fixnow-auth-heading h2 {
  color: #fff !important;
}

html.native-app .fixnow-auth-heading p {
  color: rgba(255, 255, 255, 0.8) !important;
}

html.native-app .fixnow-page-auth .fixnow-auth-heading p button.text-blue-600 {
  color: #ffc2c7 !important;
}

html.native-app .fixnow-page-auth form,
html.native-app .fixnow-page-auth .max-w-md > .space-y-3 {
  background: #fff;
  padding: 1.5rem;
  border-radius: var(--app-radius-xl);
  box-shadow: var(--app-shadow-card);
}

html.native-app .fixnow-page-auth form .justify-center > span.bg-gray-50 {
  background: #fff !important;
}

html.native-app .fixnow-page-auth .max-w-md > .space-y-3 button {
  border-radius: 0.875rem !important;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
  font-weight: 600;
}

/* 付款結果 */
html.native-app .fixnow-page-result {
  align-items: flex-start !important;
  padding-top: 3rem !important;
}

html.native-app .fixnow-page-result > div {
  border-radius: var(--app-radius-xl) !important;
  border: none !important;
  padding: 2rem 1.5rem !important;
}

html.native-app .fixnow-page-result > div.bg-white {
  box-shadow: var(--app-shadow-card) !important;
}

/* 訊息：自己的泡泡改深藍 */
html.native-app .fixnow-page-messages .bg-blue-600.text-white.rounded-br-md {
  background-color: var(--app-navy) !important;
}

/* 通知頁維持白底清單 */
html.native-app .fixnow-page-notifications {
  background: #fff !important;
}
/**
 * 個人資料頁的 App 風格：在原生 App 與手機寬度（< 768px）的網頁都會套用
 * （由 ProfilePage 在頁面最外層加上 fixnow-profile-app-style）；電腦版不受影響。
 * 前綴加上 .fixnow-app-page.fixnow-page-profile 以蓋過 native-app.css 的共用頁面規則。
 */
html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-radius-lg: 1.25rem;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  --profile-bottom-nav-h: 4rem;
  background: var(--app-bg) !important;
  padding-top: 1rem !important;
  padding-bottom: calc(9rem + env(safe-area-inset-bottom, 0px)) !important;
}

html.native-app .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style {
  --profile-bottom-nav-h: 4.25rem;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style > .py-8 {
  padding-top: 0.25rem !important;
}

/* 共用：卡片、主要按鈕、輸入框 */
html
  .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style
  .bg-white:is(.shadow, .shadow-sm, .shadow-md, .shadow-lg):is(.rounded, .rounded-md, .rounded-lg, .rounded-xl) {
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
  border-color: transparent !important;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style :is(button, a).bg-blue-600:not(:disabled) {
  background-color: var(--app-coral) !important;
  border-radius: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style :is(button, a).text-blue-600 {
  color: var(--app-navy-light) !important;
}

html
  .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style
  :is(input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='file']), select, textarea) {
  border-radius: 0.875rem;
}

/* 「我的帳戶」標題列與頂欄重複；儀表板入口改放在底部「更多設定」 */
html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-topbar {
  display: none !important;
}

/* 頭像與名字：淺色底、深色大字（對照設計圖） */
html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-sidebar.bg-white.shadow-md {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: visible;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-user {
  background: transparent;
  border-bottom: none !important;
  padding: 0 !important;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-user h2 {
  color: var(--app-navy) !important;
  font-size: 1.375rem;
  font-weight: 700;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-user > .flex p {
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-user > .flex > .min-w-0 > :is(h2, p) {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-user img {
  width: 4.5rem;
  height: 4.5rem;
  border: 3px solid #fff;
  box-shadow: 0 6px 16px rgba(29, 53, 87, 0.15);
}

/* 分頁：可左右滑動的膠囊標籤 */
html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-nav {
  display: flex;
  gap: 0.5rem;
  overflow-x: auto;
  margin: 1rem -1rem 0;
  padding: 0.25rem 1rem 0.5rem !important;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-nav::-webkit-scrollbar {
  display: none;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-nav > :is(button, a) {
  flex: 0 0 auto;
  width: auto !important;
  margin-top: 0 !important;
  padding: 0.5rem 0.875rem !important;
  border-radius: 9999px !important;
  font-size: 0.875rem;
  white-space: nowrap;
  background: #fff;
  color: #334155 !important;
  box-shadow: 0 2px 8px rgba(29, 53, 87, 0.06);
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-nav > :is(button, a) svg {
  width: 1rem;
  height: 1rem;
  margin-right: 0.375rem !important;
}

html
  .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style
  .fixnow-profile-nav
  > button:is(.bg-blue-50, .bg-emerald-50, .bg-sky-50) {
  background: var(--app-navy) !important;
  color: #fff !important;
}

/* 捷徑已移到頭像下方、次要設定與登出移到頁面底部清單 */
html
  .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style
  .fixnow-profile-nav
  > :is(.fixnow-profile-tab--more, .fixnow-profile-logout, a) {
  display: none !important;
}

/* 目前位置設置：精簡說明、圖示搜尋鈕、兩顆按鈕並排 */
html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-location-help {
  display: none !important;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-location-body {
  padding: 1rem !important;
  border: none !important;
  background: #f8fafc !important;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-geo-search > button {
  flex-shrink: 0;
  width: 2.75rem;
  padding: 0 !important;
  justify-content: center;
  font-size: 0 !important;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-geo-search > button svg {
  margin: 0 !important;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-location-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-location-actions > button {
  justify-content: center;
  padding: 0.7rem 0.5rem !important;
  font-size: 0.875rem;
  border-radius: 0.875rem !important;
}

/* 「儲存變更」固定在底部導覽列上方 */
html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-save-bar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: calc(var(--profile-bottom-nav-h) + 1px + env(safe-area-inset-bottom, 0px));
  z-index: 80;
  margin: 0 !important;
  padding: 0.75rem 1rem;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(8px);
  box-shadow: 0 -6px 18px rgba(29, 53, 87, 0.08);
}

html .fixnow-app-page.fixnow-page-profile.fixnow-profile-app-style .fixnow-profile-save-bar > button {
  width: 100%;
  padding: 0.85rem 1rem !important;
  font-weight: 700;
}
/**
 * 申請維修頁的 App 風格：在原生 App 與手機寬度（< 768px）的網頁都會套用
 * （由 ServiceRequestPage 在頁面最外層加上 fixnow-request-app-style）；電腦版不受影響。
 * 前綴加上 .fixnow-app-page.fixnow-page-request 以蓋過 native-app.css 的共用頁面規則。
 */
html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-radius-lg: 1.25rem;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  --request-bottom-nav-h: 4rem;
  background: var(--app-bg) !important;
  padding-top: 1rem !important;
  padding-bottom: calc(10rem + env(safe-area-inset-bottom, 0px)) !important;
}

html.native-app .fixnow-app-page.fixnow-page-request.fixnow-request-app-style {
  --request-bottom-nav-h: 4.25rem;
}

/* 共用：卡片、主要按鈕、輸入框 */
html
  .fixnow-app-page.fixnow-page-request.fixnow-request-app-style
  .bg-white:is(.shadow, .shadow-sm, .shadow-md, .shadow-lg):is(.rounded, .rounded-md, .rounded-lg, .rounded-xl) {
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
  border-color: transparent !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style :is(button, a).bg-blue-600:not(:disabled) {
  background-color: var(--app-coral) !important;
  border-radius: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style :is(button, a).text-blue-600 {
  color: var(--app-navy-light) !important;
}

html
  .fixnow-app-page.fixnow-page-request.fixnow-request-app-style
  :is(input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='file']), select, textarea) {
  border-radius: 0.875rem;
}

/* 頁首：標題縮小、說明框隱藏 */
html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style > div > .mb-8:first-child {
  margin-bottom: 1rem !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style h1.text-3xl {
  font-size: 1.375rem;
  line-height: 1.75rem;
  color: var(--app-navy);
  margin-bottom: 0.25rem !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style > div > .mb-8:first-child > p {
  font-size: 0.8125rem;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-intro {
  display: none !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-company-card {
  margin-bottom: 1rem !important;
  padding: 1rem !important;
  border-radius: var(--app-radius-lg) !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-company-card .space-x-4 {
  flex-wrap: wrap;
  gap: 0.25rem 0.75rem;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-company-card .space-x-4 > * {
  margin-left: 0 !important;
}

/* 步驟條 */
html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-steps {
  margin-bottom: 1rem !important;
  padding: 0.875rem 1rem;
  background: #fff;
  border-radius: var(--app-radius-lg);
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-steps > div:first-child {
  justify-content: space-between !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-steps > div > * {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-steps > div:first-child > div {
  flex: 1 1 0;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-steps > div:first-child > div:last-child {
  flex: 0 0 auto;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-steps > div:first-child > div > div:first-child {
  flex-shrink: 0;
}

html
  .fixnow-app-page.fixnow-page-request.fixnow-request-app-style
  .fixnow-request-steps
  > div:first-child
  > div
  > div:last-child:not(:first-child) {
  flex: 1;
  width: auto !important;
  margin: 0 0.375rem !important;
  border-radius: 9999px;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-steps > div:first-child .bg-blue-600 {
  background-color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-steps > div:last-child {
  justify-content: space-between !important;
  margin-top: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-steps > div:last-child > span {
  font-size: 0.6875rem;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-steps > div:last-child > span.text-blue-600 {
  color: var(--app-navy) !important;
  font-weight: 600;
}

/* 表單卡片 */
html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-card {
  padding: 1.25rem !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-card h2.text-2xl {
  font-size: 1.25rem;
  color: var(--app-navy);
  margin-bottom: 0.25rem !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-help {
  display: none !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style :is(.fixnow-request-link, .fixnow-request-hint-toggle) {
  color: var(--app-navy-light);
}

/* 分類、緊急程度、日期、時段的選取狀態 */
html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-choice.is-active {
  background: var(--app-navy);
  border-color: var(--app-navy);
  color: #fff;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-date-strip {
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-date-strip::-webkit-scrollbar {
  display: none;
}

/* 服務地址：常用地址移到最上方、定位按鈕並排 */
html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-address-step {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-address-step > * {
  margin-top: 0 !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-address-step > .fixnow-request-step-head {
  order: -2;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-address-step > .fixnow-request-saved-addresses {
  order: -1;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-locate-actions {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-locate-actions > button {
  justify-content: center;
  padding: 0.7rem 0.5rem !important;
  border-radius: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-map {
  border-radius: var(--app-radius-lg) !important;
}

/* 確認資訊 */
html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-summary-price {
  background: var(--app-navy);
}

/* 固定底部按鈕列 */
html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-actions {
  position: fixed;
  left: 0;
  right: 0;
  bottom: calc(var(--request-bottom-nav-h) + 1px + env(safe-area-inset-bottom, 0px));
  z-index: 80;
  margin: 0 !important;
  padding: 0.75rem 1rem;
  gap: 0.75rem;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(8px);
  box-shadow: 0 -6px 18px rgba(29, 53, 87, 0.08);
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-actions > button {
  flex: 1;
  justify-content: center;
  padding: 0.8rem 1rem !important;
  border-radius: 0.875rem !important;
  font-weight: 700;
  white-space: nowrap;
}

html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-actions > button:first-child {
  flex: 0 0 auto;
  background: #fff !important;
  color: var(--app-navy) !important;
  border: 1px solid #cbd5e1;
}

/* 第一步沒有上一步可回，讓「下一步」佔滿整排 */
html .fixnow-app-page.fixnow-page-request.fixnow-request-app-style .fixnow-request-actions > button:first-child:disabled {
  display: none;
}
/**
 * 搜尋頁的 App 風格：在原生 App 與手機寬度（< 768px）的網頁都會套用
 * （由 CraftsmanSearchPage 在頁面最外層加上 fixnow-search-app-style）；電腦版不受影響。
 * 前綴加上 .fixnow-app-page.fixnow-page-search 以蓋過 native-app.css 的共用頁面規則。
 */
html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-radius-lg: 1.25rem;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
  padding-top: 1rem !important;
  padding-bottom: calc(5rem + env(safe-area-inset-bottom, 0px)) !important;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style > .py-8 {
  padding-top: 0.25rem !important;
  padding-bottom: 1rem !important;
}

/* 共用：卡片、主要按鈕 */
html
  .fixnow-app-page.fixnow-page-search.fixnow-search-app-style
  .bg-white:is(.shadow, .shadow-sm, .shadow-md, .shadow-lg):is(.rounded, .rounded-md, .rounded-lg, .rounded-xl) {
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
  border-color: transparent !important;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style :is(button, a).bg-blue-600:not(:disabled) {
  background-color: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style :is(button, a).text-blue-600 {
  color: var(--app-navy-light) !important;
}

/* 標題與搜尋列 */
html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-header {
  margin-bottom: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-header h1 {
  font-size: 1.375rem;
  color: var(--app-navy);
  margin-bottom: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-form {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-form input {
  border-radius: 9999px !important;
  border-color: transparent !important;
  background: #fff;
  box-shadow: var(--app-shadow-card);
  padding-top: 0.7rem !important;
  padding-bottom: 0.7rem !important;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-form .relative > svg {
  top: 50% !important;
  transform: translateY(-50%);
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-filter-btn {
  width: 2.875rem;
  padding: 0 !important;
  justify-content: center;
  font-size: 0 !important;
  border-radius: 9999px !important;
  background: #fff !important;
  color: var(--app-navy) !important;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-filter-btn svg {
  margin-right: 0 !important;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-filter-btn > span {
  position: absolute;
  top: -0.25rem;
  right: -0.25rem;
  margin: 0 !important;
  font-size: 0.625rem;
  background-color: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-form button[type='submit'] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.875rem;
  padding: 0 !important;
  border-radius: 9999px !important;
}

/* 類型分頁與清單／地圖切換 */
html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-type-tabs {
  gap: 0.375rem;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-type-tabs > button {
  margin-left: 0 !important;
  padding: 0.4rem 0.85rem !important;
  border-radius: 9999px !important;
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-type-tabs > button.bg-gray-100 {
  background: #fff !important;
  color: #475569 !important;
  box-shadow: 0 2px 8px rgba(29, 53, 87, 0.06);
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-view-toggle {
  box-shadow: 0 2px 8px rgba(29, 53, 87, 0.08);
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-view-toggle > button.is-active {
  background: var(--app-navy);
  color: #fff;
}

/* 類別快捷列與篩選面板的膠囊選項 */
html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-category-chips {
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-category-chips::-webkit-scrollbar {
  display: none;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-pill.is-active {
  background: var(--app-navy);
  border-color: var(--app-navy);
  color: #fff;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-sheet-done {
  background: var(--app-coral);
}

/* 結果卡片 */
html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-provider-card {
  border: none !important;
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-provider-card h3 {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-provider-card button.rounded-lg {
  border-radius: 9999px !important;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-provider-card--compact img.rounded-full {
  border: 2px solid #fff;
  box-shadow: 0 0 0 2px rgba(29, 53, 87, 0.12);
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-provider-rate {
  color: var(--app-navy);
}

/* 地圖：切換到「地圖」時填滿剩餘畫面；定位失敗改由清單上方提示條說明 */
html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-map {
  position: relative !important;
  top: auto !important;
  height: calc(100dvh - 18rem) !important;
  min-height: 20rem;
  border-radius: var(--app-radius-lg) !important;
}

html .fixnow-app-page.fixnow-page-search.fixnow-search-app-style .fixnow-search-map-status:has(> .fixnow-search-map-error) {
  display: none;
}
/**
 * 工匠資料頁（/craftsman/profile）的 App 風格：原生 App 與手機寬度（< 768px）的網頁會套用
 * （由 CraftsmanProfilePage 在最外層加上 fixnow-cprofile-app-style）；電腦版不受影響。
 * 分頁切換靠最外層的 data-cprofile-tab 與各卡片的 data-section 對應顯示。
 */
html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-radius-lg: 1.25rem;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  --cprofile-bottom-nav-h: 4rem;
  background: var(--app-bg) !important;
  padding-top: 1rem;
  padding-bottom: calc(1.5rem + env(safe-area-inset-bottom, 0px));
}

html.native-app .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style {
  --cprofile-bottom-nav-h: 4.25rem;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style.is-editing {
  padding-bottom: calc(6rem + env(safe-area-inset-bottom, 0px));
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style > .w-full {
  padding-top: 0.25rem !important;
  padding-bottom: 0 !important;
}

/* 已由頂部資料卡、統計列取代的區塊；時薪留在「基本資料」 */
html
  .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style
  :is(.fixnow-cprofile-title, .fixnow-cprofile-summary, .fixnow-cprofile-perf, .fixnow-cprofile-availability, .fixnow-cprofile-email) {
  display: none !important;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style:not(.is-editing) .fixnow-cprofile-hint {
  display: none;
}

/* ===== 頂部資料卡 ===== */
html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-hero {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  padding: 1rem;
  background: #fff;
  border-radius: var(--app-radius-lg);
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-hero-avatar {
  flex-shrink: 0;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-hero-avatar .text-center {
  display: none;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-hero-avatar > div > div:first-child {
  box-shadow: 0 6px 16px rgba(29, 53, 87, 0.15);
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-hero-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5rem;
  color: var(--app-navy);
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-hero-email {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.8125rem;
  color: #64748b;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  padding: 0.2rem 0.55rem;
  border-radius: 9999px;
  background: #f1f5f9;
  font-size: 0.75rem;
  font-weight: 600;
  color: #334155;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-edit-btn {
  align-self: flex-start;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 9999px;
  background: #fdecee;
  color: var(--app-coral);
}

/* ===== 統計列 ===== */
html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 0.75rem;
  padding: 0.875rem 0.25rem;
  background: #fff;
  border-radius: var(--app-radius-lg);
  box-shadow: var(--app-shadow-card);
  text-align: center;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-stats > div + div {
  border-left: 1px solid #eef2f7;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-stat-value {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 0 0.25rem;
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--app-navy);
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-stat-label {
  margin-top: 0.125rem;
  font-size: 0.75rem;
  color: #64748b;
}

/* ===== 捷徑方塊 ===== */
html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-tiles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
  margin-top: 0.75rem;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-tile {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  min-height: 3.5rem;
  padding: 0.75rem 0.875rem;
  background: #fff;
  border-radius: 1rem;
  box-shadow: var(--app-shadow-card);
  color: #1e293b;
  touch-action: manipulation;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-tile-icon {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 9999px;
  background: #eef2f8;
  color: var(--app-navy);
}

/* ===== 分頁膠囊 ===== */
html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-tabs {
  display: flex;
  gap: 0.5rem;
  overflow-x: auto;
  margin: 1rem -1rem 0.5rem;
  padding: 0.25rem 1rem 0.5rem;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-tabs::-webkit-scrollbar {
  display: none;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-tabs > button {
  position: relative;
  flex: 0 0 auto;
  padding: 0.5rem 0.875rem;
  border-radius: 9999px;
  background: #fff;
  color: #334155;
  font-size: 0.875rem;
  font-weight: 600;
  white-space: nowrap;
  box-shadow: 0 2px 8px rgba(29, 53, 87, 0.06);
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-tabs > button.is-active {
  background: var(--app-navy);
  color: #fff;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-tab-error {
  position: absolute;
  top: 0.25rem;
  right: 0.375rem;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 9999px;
  background: var(--app-coral);
}

/* ===== 分頁內容：欄位外框拆掉，卡片依分頁顯示 ===== */
html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-grid {
  gap: 0.75rem;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-col {
  display: contents;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-col > * {
  margin: 0 !important;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-basic {
  order: 1;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-contact {
  order: 2;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-section {
  display: none;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style[data-cprofile-tab='basic'] .fixnow-cprofile-section[data-section='basic'],
html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style[data-cprofile-tab='skills'] .fixnow-cprofile-section[data-section='skills'],
html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style[data-cprofile-tab='hours'] .fixnow-cprofile-section[data-section='hours'],
html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style[data-cprofile-tab='certs'] .fixnow-cprofile-section[data-section='certs'],
html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style[data-cprofile-tab='bank'] .fixnow-cprofile-section[data-section='bank'] {
  display: block;
}

/* ===== 卡片、標題、輸入框 ===== */
html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-section.bg-white {
  padding: 1.125rem !important;
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-section > h3 {
  margin-bottom: 1rem !important;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-section h3 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-section h3 svg {
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-basic > .grid {
  gap: 1rem !important;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-basic > .mt-6 {
  margin-top: 1rem !important;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-rate {
  font-size: 1.375rem;
  line-height: 1.75rem;
  color: var(--app-navy) !important;
}

html
  .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style
  :is(input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='file']), select, textarea) {
  border-radius: 0.875rem;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style :is(button, a).bg-blue-600:not(:disabled) {
  background-color: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style :is(button, a).text-blue-600 {
  color: var(--app-navy-light) !important;
}

/* ===== 編輯時固定在底部導覽列上方的儲存列 ===== */
html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-save-bar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: calc(var(--cprofile-bottom-nav-h) + 1px + env(safe-area-inset-bottom, 0px));
  z-index: 80;
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 0.625rem;
  padding: 0.75rem 1rem;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(8px);
  box-shadow: 0 -6px 18px rgba(29, 53, 87, 0.08);
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-save-bar > button {
  padding: 0.8rem 1rem;
  border-radius: 0.875rem;
  font-weight: 700;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-save-bar > button.is-secondary {
  background: #f1f5f9;
  color: #334155;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-save-bar > button.is-primary {
  background: var(--app-coral);
  color: #fff;
}

html .fixnow-app-page.fixnow-page-craftsman-profile.fixnow-cprofile-app-style .fixnow-cprofile-save-bar > button:disabled {
  opacity: 0.6;
}
/**
 * 工匠接案管理頁（/craftsman/jobs）的 App 風格：原生 App 與手機寬度（< 768px）的網頁會套用
 * （由 CraftsmanJobsPage 在最外層加上 fixnow-cjobs-app-style）；電腦版不受影響。
 * CompanyJobsPage 也用 fixnow-page-jobs，所以一律以 fixnow-cjobs-app-style 限定範圍。
 */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-radius-lg: 1.25rem;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
  padding-top: 1.25rem !important;
}

/* ===== 標題列：標題與日曆按鈕同一行 ===== */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-header {
  margin-bottom: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-header > div {
  flex-direction: row !important;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-header h1 {
  margin: 0 !important;
  font-size: 1.375rem !important;
  line-height: 1.75rem !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-subtitle {
  display: none;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-header > div > div:last-child {
  width: auto !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-calendar-btn {
  width: auto !important;
  min-height: 2.25rem !important;
  padding: 0.4rem 0.875rem !important;
  border: none !important;
  border-radius: 9999px !important;
  background: #fff !important;
  color: var(--app-navy) !important;
  font-size: 0.8125rem;
  font-weight: 600;
  box-shadow: 0 2px 8px rgba(29, 53, 87, 0.08);
}

/* ===== 狀態分頁：三格膠囊 ===== */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-tabs-card {
  margin-bottom: 0.875rem !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-tabs-card > div {
  border: none !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-tabs {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.25rem !important;
  padding: 0.25rem !important;
  border-radius: 9999px;
  background: #fff;
  box-shadow: 0 2px 8px rgba(29, 53, 87, 0.06);
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-tabs > button {
  justify-content: center;
  min-height: 2.5rem !important;
  padding: 0.25rem 0.5rem !important;
  border: none !important;
  border-radius: 9999px;
  color: #475569 !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-tabs > button[aria-selected='true'] {
  background: var(--app-navy);
  color: #fff !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-tab-count {
  margin-left: 0.375rem !important;
  padding: 0 0.45rem !important;
  background: #eef2f8 !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-tabs > button[aria-selected='true'] .fixnow-cjobs-tab-count {
  background: rgba(255, 255, 255, 0.2) !important;
  color: #fff !important;
}

/* ===== 批次操作列 ===== */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-batch {
  flex-direction: row !important;
  align-items: center;
  justify-content: space-between;
  padding: 0.25rem 0.75rem !important;
  margin-bottom: 0.75rem !important;
  border: none !important;
  border-radius: 1rem !important;
  box-shadow: 0 2px 8px rgba(29, 53, 87, 0.06) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-batch > button {
  width: auto !important;
  min-height: 2.25rem !important;
  padding: 0.35rem 0.75rem !important;
  border-radius: 9999px !important;
  font-size: 0.8125rem;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-batch > button:not(:disabled) {
  background: var(--app-coral) !important;
}

/* ===== 案件卡片 ===== */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-empty,
html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-card {
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-empty {
  padding: 2.5rem 1.5rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-empty svg {
  width: 3.5rem;
  height: 3.5rem;
  padding: 0.875rem;
  border-radius: 9999px;
  background: #eef2f8;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-card {
  padding: 1rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-card > .flex {
  gap: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-title {
  flex-basis: 0 !important;
  font-size: 1rem !important;
  font-weight: 700;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-desc {
  -webkit-line-clamp: 2 !important;
  margin-bottom: 0.75rem !important;
  font-size: 0.875rem !important;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-customer {
  margin-bottom: 0.75rem !important;
  padding: 0.75rem !important;
  border-radius: 1rem !important;
  background: #f8fafc !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-customer > .grid {
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-customer > .grid > button {
  min-height: 2.5rem !important;
  background: #fff !important;
  box-shadow: 0 1px 4px rgba(29, 53, 87, 0.08);
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style :is(.fixnow-cjobs-price, .fixnow-cjobs-billing) {
  margin-bottom: 0.75rem !important;
  border: none !important;
  border-radius: 1rem !important;
  background: #eef2f8 !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-price p:first-child,
html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-billing p.text-purple-600 {
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-price p.text-lg,
html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-billing :is(.text-purple-900, .text-purple-700) {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-schedule {
  margin-bottom: 0.25rem !important;
}

/* ===== 操作按鈕：待接案時「拒絕｜接案」並排，查看詳情在下方 ===== */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-actions {
  display: grid !important;
  grid-template-columns: 1fr 2fr;
  gap: 0.5rem !important;
  padding-top: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-actions > * {
  grid-column: 1 / -1;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-actions > .fixnow-cjobs-reject {
  grid-column: 1;
  grid-row: 1;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-actions > .fixnow-cjobs-accept {
  grid-column: 2;
  grid-row: 1;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-actions > :is(button, div) {
  border-radius: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-actions > button {
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-accept.bg-blue-600 {
  background: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-reject {
  border-color: #e2e8f0 !important;
  background: #f8fafc;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cjobs-app-style .fixnow-cjobs-details {
  min-height: 2.25rem !important;
  margin-top: 0 !important;
  border: none !important;
  background: transparent !important;
  color: var(--app-navy-light) !important;
}
/**
 * 公司資料頁（/company/profile）的 App 風格：原生 App 與手機寬度（< 768px）的網頁會套用
 * （由 CompanyProfilePage 在最外層加上 fixnow-coprofile-app-style）；電腦版不受影響。
 * 分頁切換靠最外層的 data-coprofile-tab 與各卡片的 data-section 對應顯示。
 */
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-radius-lg: 1.25rem;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  --coprofile-bottom-nav-h: 4rem;
  background: var(--app-bg) !important;
  padding-bottom: calc(1.5rem + env(safe-area-inset-bottom, 0px));
}

html.native-app .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style {
  --coprofile-bottom-nav-h: 4.25rem;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style.is-editing {
  padding-bottom: calc(6rem + env(safe-area-inset-bottom, 0px));
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style > .w-full {
  padding-top: 1rem !important;
  padding-bottom: 0 !important;
}

/* 提示訊息原本在頂欄後面，移到頂欄下方 */
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style > .fixed.top-4.right-4 {
  top: calc(4rem + env(safe-area-inset-top, 0px) + 0.5rem);
  left: 1rem;
  right: 1rem;
  z-index: 120;
}

/* 已由頂部資料卡、餘額卡、統計列、捷徑方塊取代的區塊 */
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-legacy {
  display: none !important;
}

/* ===== 頂部資料卡 ===== */
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-hero {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  padding: 1rem;
  background: #fff;
  border-radius: var(--app-radius-lg);
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-hero-avatar {
  flex-shrink: 0;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-hero-avatar .text-center {
  display: none;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-hero-avatar > div > div:first-child {
  box-shadow: 0 6px 16px rgba(29, 53, 87, 0.15);
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-hero-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5rem;
  color: var(--app-navy);
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-hero-email {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.8125rem;
  color: #64748b;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.2rem 0.55rem;
  border-radius: 9999px;
  background: #f1f5f9;
  font-size: 0.75rem;
  font-weight: 600;
  color: #334155;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-chip.is-premium {
  background: #fdf3d7;
  color: #a07400;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-chip.is-expired {
  background: #fdecee;
  color: var(--app-coral);
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-edit-btn {
  align-self: flex-start;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 9999px;
  background: #fdecee;
  color: var(--app-coral);
}

/* ===== 會員到期提醒 ===== */
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-renew {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-top: 0.75rem;
  padding: 0.75rem 0.875rem;
  border-radius: 1rem;
  background: #fdecee;
  color: #9f1d29;
  font-size: 0.8125rem;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-renew > button {
  flex-shrink: 0;
  padding: 0.45rem 0.875rem;
  border-radius: 9999px;
  background: var(--app-coral);
  color: #fff;
  font-size: 0.8125rem;
  font-weight: 700;
}

/* ===== 帳戶餘額卡 ===== */
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-balance {
  margin-top: 0.75rem;
  padding: 1rem 1.125rem;
  border-radius: var(--app-radius-lg);
  background: linear-gradient(135deg, var(--app-navy), var(--app-navy-light));
  color: #fff;
  box-shadow: 0 10px 24px rgba(29, 53, 87, 0.22);
}

/* ===== 統計列 ===== */
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 0.75rem;
  padding: 0.875rem 0.25rem;
  background: #fff;
  border-radius: var(--app-radius-lg);
  box-shadow: var(--app-shadow-card);
  text-align: center;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-stats > div + div {
  border-left: 1px solid #eef2f7;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-stat-value {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 0 0.25rem;
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--app-navy);
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-stat-label {
  margin-top: 0.125rem;
  font-size: 0.75rem;
  color: #64748b;
}

/* ===== 捷徑方塊 ===== */
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-tiles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
  margin-top: 0.75rem;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-tile {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  min-width: 0;
  min-height: 3.5rem;
  padding: 0.75rem 0.875rem;
  background: #fff;
  border-radius: 1rem;
  box-shadow: var(--app-shadow-card);
  color: #1e293b;
  touch-action: manipulation;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-tile-icon {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 9999px;
  background: #eef2f8;
  color: var(--app-navy);
}

/* ===== 分頁膠囊 ===== */
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-tabs {
  display: flex;
  gap: 0.5rem;
  overflow-x: auto;
  margin: 1rem -1rem 0.5rem;
  padding: 0.25rem 1rem 0.5rem;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-tabs::-webkit-scrollbar {
  display: none;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-tabs > button {
  position: relative;
  flex: 0 0 auto;
  padding: 0.5rem 0.875rem;
  border-radius: 9999px;
  background: #fff;
  color: #334155;
  font-size: 0.875rem;
  font-weight: 600;
  white-space: nowrap;
  box-shadow: 0 2px 8px rgba(29, 53, 87, 0.06);
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-tabs > button.is-active {
  background: var(--app-navy);
  color: #fff;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-tab-error {
  position: absolute;
  top: 0.25rem;
  right: 0.375rem;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 9999px;
  background: var(--app-coral);
}

/* ===== 分頁內容：大外框拆掉，每個區塊各自成卡片 ===== */
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-card {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-error {
  border-radius: 1rem;
  border: 1px solid #fecaca !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-form {
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-grid {
  display: contents;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-section {
  display: none;
  margin: 0 !important;
  padding: 1.125rem !important;
  background: #fff;
  border-radius: var(--app-radius-lg);
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style[data-coprofile-tab='basic'] .fixnow-coprofile-section[data-section='basic'],
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style[data-coprofile-tab='service'] .fixnow-coprofile-section[data-section='service'],
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style[data-coprofile-tab='certs'] .fixnow-coprofile-section[data-section='certs'],
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style[data-coprofile-tab='bank'] .fixnow-coprofile-section[data-section='bank'] {
  display: block;
}

/* ===== 卡片標題、輸入框、按鈕 ===== */
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-section > h3,
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-bank-title {
  margin-bottom: 0.75rem !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-section h3 {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-section.space-y-4 > :not([hidden]) ~ :not([hidden]) {
  margin-top: 0.875rem;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-section.space-y-6 > :not([hidden]) ~ :not([hidden]) {
  margin-top: 1.125rem;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-section .flex-wrap > span.text-gray-300 {
  display: none;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-section .flex-wrap > a.text-xs {
  padding: 0.2rem 0.6rem;
  border-radius: 9999px;
  background: #eef2f8;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-section label.text-gray-700 {
  color: #64748b;
  font-size: 0.75rem;
  font-weight: 600;
}

html
  .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style
  :is(input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='file']), select, textarea) {
  border-radius: 0.875rem;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-section button.border-blue-500 {
  border-color: var(--app-navy) !important;
  background: #eef2f8 !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-section button.border-green-500 {
  border-color: var(--app-navy-light) !important;
  background: #eef2f8 !important;
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style :is(button, a).bg-blue-600:not(:disabled) {
  background-color: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style :is(button, a).text-blue-600 {
  color: var(--app-navy-light) !important;
}

/* ===== 編輯時固定在底部導覽列上方的儲存列 ===== */
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-save-bar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: calc(var(--coprofile-bottom-nav-h) + 1px + env(safe-area-inset-bottom, 0px));
  z-index: 80;
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 0.625rem;
  padding: 0.75rem 1rem;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(8px);
  box-shadow: 0 -6px 18px rgba(29, 53, 87, 0.08);
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-save-bar > button {
  padding: 0.8rem 1rem;
  border-radius: 0.875rem;
  font-weight: 700;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-save-bar > button.is-secondary {
  background: #f1f5f9;
  color: #334155;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-save-bar > button.is-primary {
  background: var(--app-coral);
  color: #fff;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-save-bar > button:disabled {
  opacity: 0.6;
}

/* ===== Premium 數據分析報告（共用元件，僅在公司資料 App 版內調整） ===== */
html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report {
  margin-top: 0.75rem;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report > div {
  padding: 1rem !important;
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report > div > div:first-child {
  flex-direction: column;
  align-items: stretch !important;
  gap: 0.75rem;
  margin-bottom: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report h2 {
  font-size: 1rem !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report > div > div:first-child > div:last-child > button {
  flex: 1 1 0%;
  justify-content: center;
  min-height: 2.5rem;
  padding: 0.5rem !important;
  border-radius: 0.875rem !important;
  background: #eef2f8 !important;
  color: var(--app-navy) !important;
  font-size: 0.8125rem;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report > div > div:nth-child(2) {
  margin-bottom: 0.875rem !important;
  padding: 0.75rem !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report > div > div:nth-child(2) > div {
  flex-wrap: wrap;
  min-width: 0;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report > div > div:nth-child(2) input {
  flex: 1 1 0%;
  min-width: 0;
  min-height: 2.5rem;
  padding: 0 0.375rem !important;
  border-color: transparent !important;
  border-radius: 0.75rem !important;
  background: #fff;
  font-size: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report > div > div:nth-child(2) > div > span:first-of-type {
  flex-basis: calc(100% - 1.5rem);
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report > div > div:nth-child(2) button {
  flex-basis: 100%;
  justify-content: center;
  min-height: 2.5rem;
  margin-left: 0 !important;
  border-radius: 0.75rem !important;
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report > div > div:nth-child(3) {
  margin-bottom: 0 !important;
  padding: 0.75rem !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report > div > div:nth-child(3) h3 {
  margin-bottom: 0.5rem !important;
  font-size: 0.875rem !important;
  color: var(--app-navy);
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report > div > div:nth-child(3) .grid {
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report > div > div:nth-child(3) .grid p:first-child {
  font-size: 0.6875rem !important;
}

html .fixnow-app-page.fixnow-page-company-profile.fixnow-coprofile-app-style .fixnow-coprofile-premium-report > div > div:nth-child(3) .grid p:last-child {
  font-size: 0.8125rem;
  color: var(--app-navy);
}
/**
 * 公司案件管理頁（/company/jobs）的 App 風格：原生 App 與手機寬度（< 768px）的網頁會套用
 * （由 CompanyJobsPage 在最外層加上 fixnow-cojobs-app-style）；電腦版不受影響。
 * CraftsmanJobsPage 也用 fixnow-page-jobs，所以一律以 fixnow-cojobs-app-style 限定範圍。
 */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-radius-lg: 1.25rem;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  --app-shadow-soft: 0 2px 8px rgba(29, 53, 87, 0.06);
  background: var(--app-bg) !important;
  padding-top: 0 !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-container {
  padding: 1rem 1rem 1.5rem !important;
}

/* ===== 標題 ===== */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-header {
  margin-bottom: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-header h1 {
  font-size: 1.375rem !important;
  line-height: 1.75rem !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-subtitle {
  display: none;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-header > div {
  margin-top: 0.5rem !important;
  border-radius: 0.875rem !important;
  font-size: 0.75rem;
}

/* ===== 狀態統計：可橫向滑動的膠囊 ===== */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-stats {
  display: flex !important;
  gap: 0.5rem !important;
  margin: 0 -1rem 0.875rem !important;
  padding: 0.125rem 1rem 0.375rem;
  overflow-x: auto;
  scrollbar-width: none;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-stats::-webkit-scrollbar {
  display: none;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-stat {
  flex: 0 0 auto;
  padding: 0.5rem 0.875rem !important;
  border-radius: 9999px !important;
  box-shadow: var(--app-shadow-soft) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-stat > div > div:first-child {
  display: flex;
  align-items: baseline;
  gap: 0.375rem;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-stat > div > div:last-child {
  display: none;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-stat p {
  white-space: nowrap;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-stat p:first-child {
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  color: #475569 !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-stat p:last-child {
  font-size: 1rem !important;
  line-height: 1.25rem !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-stat.is-active {
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-stat.is-active p {
  color: #fff !important;
}

/* ===== 篩選卡 ===== */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-filters {
  margin-bottom: 1rem !important;
  padding: 1rem !important;
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-guide-toggle {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  min-height: 2.5rem;
  margin-bottom: 0.75rem;
  padding: 0.5rem 0.875rem;
  border-radius: 0.875rem;
  background: var(--app-tint);
  color: var(--app-navy);
  font-size: 0.875rem;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-filters[data-guide-open='false'] > .fixnow-cojobs-guide {
  display: none;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-guide {
  margin-bottom: 0.75rem !important;
  border: none !important;
  border-radius: 1rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-guide > div:first-child {
  display: none;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-guide .bg-white {
  border-color: transparent !important;
  border-radius: 0.875rem !important;
}

/* 刷新／匯出列 */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-toolbar {
  flex-direction: row !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-toolbar button {
  min-height: 2.25rem !important;
  padding: 0.25rem 0.75rem !important;
  border-radius: 9999px !important;
  background: var(--app-tint) !important;
  color: var(--app-navy) !important;
  font-size: 0.8125rem !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-toolbar p {
  font-size: 0.6875rem !important;
  color: #94a3b8 !important;
}

/* 快速篩選：標籤＋可橫向滑動的膠囊 */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-quick {
  flex-direction: row !important;
  align-items: center;
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-quick > span {
  font-size: 0.75rem !important;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-quick > div {
  flex: 1 1 0%;
  flex-wrap: nowrap !important;
  min-width: 0;
  gap: 0.375rem !important;
  overflow-x: auto;
  scrollbar-width: none;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-quick > div::-webkit-scrollbar {
  display: none;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-quick button {
  flex-shrink: 0;
  padding: 0.3rem 0.75rem !important;
  border-radius: 9999px !important;
  background: var(--app-tint) !important;
  color: var(--app-navy) !important;
  font-size: 0.8125rem !important;
  font-weight: 600;
  white-space: nowrap;
}

/* 搜尋、狀態、排序、進階篩選 */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-search-row {
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-search-row input {
  min-height: 2.75rem;
  border-color: transparent !important;
  border-radius: 0.875rem !important;
  background: var(--app-bg) !important;
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-selects {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-selects > select,
html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-selects > div {
  min-width: 0 !important;
  min-height: 2.75rem;
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
  border-color: transparent !important;
  border-radius: 0.875rem !important;
  background-color: var(--app-bg) !important;
  font-size: 0.8125rem;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-selects > div > select {
  padding-left: 0 !important;
  font-size: 0.8125rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-adv-btn {
  grid-column: 1 / -1;
  min-height: 2.5rem !important;
  border-radius: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-adv-btn.bg-blue-600 {
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-adv-btn.bg-gray-100 {
  background: var(--app-tint) !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-adv {
  margin-top: 0.75rem !important;
  padding-top: 0.75rem !important;
  border-color: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-adv > .grid {
  gap: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-adv input {
  min-width: 0;
  min-height: 2.5rem;
  border-color: transparent !important;
  border-radius: 0.75rem !important;
  background: var(--app-bg);
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-adv label {
  font-size: 0.75rem !important;
  color: #64748b !important;
}

/* ===== 批次操作（行政人員） ===== */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-batch {
  padding: 0.75rem !important;
  border: none !important;
  border-radius: 1rem !important;
  box-shadow: var(--app-shadow-soft);
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-batch > div,
html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-batch > div > div:last-child {
  flex-wrap: wrap;
  gap: 0.5rem;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-batch button.bg-emerald-600 {
  border-radius: 9999px !important;
}

/* ===== 案件列表：每筆獨立卡片 ===== */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-list {
  overflow: visible !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-list-head {
  flex-direction: row !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem !important;
  padding: 0 0.25rem 0.625rem !important;
  border: none !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-list-head h2 {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-list-head > div:last-child:not(:first-child) {
  padding: 0.125rem 0.625rem;
  border-radius: 9999px;
  background: #fff1f2;
  color: var(--app-coral) !important;
  font-size: 0.75rem !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-list-head > div:last-child:not(:first-child) svg {
  width: 0.875rem;
  height: 0.875rem;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-list-body {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-list-body > * {
  border-top-width: 0 !important;
  border-bottom-width: 0 !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-card,
html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-empty {
  background: #fff;
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-card {
  padding: 1rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-card:hover {
  background: #fff;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-card.is-selected {
  background: #ecfdf5 !important;
  box-shadow: 0 0 0 2px #10b981, var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-card > .flex {
  gap: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-badges {
  flex-direction: row !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.375rem !important;
  margin-bottom: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-title {
  flex-basis: 100%;
  font-size: 1rem !important;
  font-weight: 700 !important;
  line-height: 1.375rem;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-badges > span {
  padding: 0.125rem 0.5rem !important;
  font-size: 0.6875rem !important;
  font-weight: 600 !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-desc {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  margin-bottom: 0.75rem !important;
  font-size: 0.8125rem !important;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-meta {
  gap: 0.625rem !important;
  font-size: 0.8125rem;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-amounts {
  padding: 0.75rem !important;
  border: none !important;
  border-radius: 1rem !important;
  background: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-amounts .text-gray-900 {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-when {
  flex-direction: row !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  border-top: none !important;
  font-size: 0.75rem;
}

/* 操作按鈕：主要動作滿版、查看詳情帶文字 */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-actions {
  gap: 0.5rem !important;
  padding-top: 0.75rem;
  border-top: 1px solid var(--app-tint);
  align-items: center !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-actions > button {
  flex: 1 1 auto;
  justify-content: center;
  min-height: 2.5rem;
  border-radius: 0.875rem !important;
  font-size: 0.8125rem !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-actions > :is(span, div) {
  flex: 0 0 auto;
  border-radius: 9999px !important;
  font-size: 0.75rem !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-actions :is(.bg-green-600, .bg-emerald-600) {
  background: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-details {
  display: inline-flex;
  flex-basis: 100% !important;
  align-items: center;
  gap: 0.375rem;
  background: var(--app-tint);
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-details::after {
  content: '查看詳情';
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-empty {
  padding: 2.5rem 1.5rem !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-empty svg {
  width: 3.5rem;
  height: 3.5rem;
  padding: 0.875rem;
  border-radius: 9999px;
  background: var(--app-tint);
  color: var(--app-navy) !important;
}

/* ===== 彈窗：改為底部抽屜，蓋過頂欄與底部導覽 ===== */
html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-modal {
  z-index: 200 !important;
  align-items: flex-end !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-sheet {
  max-width: 100% !important;
  max-height: 88vh !important;
  margin: 0 !important;
  padding-bottom: env(safe-area-inset-bottom, 0px);
  border-radius: var(--app-radius-lg) var(--app-radius-lg) 0 0 !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-sheet > .p-6:first-child {
  position: sticky;
  top: 0;
  z-index: 1;
  padding: 1rem 1.25rem !important;
  background: #fff;
  border-color: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-sheet > .p-6:first-child h2 {
  font-size: 1.125rem !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-jobs.fixnow-cojobs-app-style .fixnow-cojobs-sheet > .p-6:not(:first-child) {
  padding: 1rem 1.25rem !important;
}
/**
 * 公司儀表板（/company/dashboard）的 App 風格：原生 App 與手機寬度（< 768px）的網頁會套用
 * （由 CompanyDashboardPage 在最外層加上 fixnow-codash-app-style）；電腦版不受影響。
 * CraftsmanDashboardPage 也用 fixnow-page-dashboard，所以一律以 fixnow-codash-app-style 限定範圍。
 */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-gold: #f5c542;
  --app-radius-lg: 1.25rem;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
  padding-top: 0 !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-container {
  padding: 1rem 1rem 1.5rem !important;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-container > * {
  margin-bottom: 0 !important;
}

/* ===== 標題 ===== */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-header {
  gap: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-title {
  background: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
  line-height: 1.75rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-greeting {
  margin-top: 0.25rem !important;
  font-size: 0.875rem !important;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-greeting span {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-refresh {
  flex-direction: row !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.125rem 0.5rem !important;
  padding: 0.5rem 0.75rem !important;
  border: none !important;
  border-radius: 0.875rem !important;
  box-shadow: 0 2px 8px rgba(29, 53, 87, 0.06) !important;
  font-size: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-refresh > div {
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-refresh > div span {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-refresh > p {
  font-size: 0.6875rem !important;
}

/* ===== 待處理事項橫幅 ===== */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-alert {
  padding: 0.875rem !important;
  border-radius: 1rem !important;
  background: #fff7ed !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-alert > div {
  align-items: flex-start !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-alert > div > div {
  gap: 0.625rem !important;
  min-width: 0;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-alert h3 {
  font-size: 0.9375rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-alert .flex-wrap {
  gap: 0.375rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-alert .flex-wrap > button {
  padding: 0.25rem 0.625rem !important;
  border-radius: 9999px !important;
  font-size: 0.75rem !important;
}

/* ===== 核心統計：本月收入深藍主卡、實際已收整列，再兩欄待收訂金／待開工；其餘兩張在 App 版隱藏 ===== */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > * {
  min-width: 0;
  padding: 0.875rem !important;
  border: none !important;
  border-radius: 1.125rem !important;
  background: #fff !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > :is(.fixnow-codash-stat-package, .fixnow-codash-stat-guarantee) {
  display: none;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > .fixnow-codash-stat-month {
  order: -2;
  grid-column: 1 / -1;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > .fixnow-codash-stat-received {
  order: -1;
  grid-column: 1 / -1;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > :is(.fixnow-codash-stat-deposit, .fixnow-codash-stat-contract) > div:last-child > :nth-child(3) {
  display: none;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > * > div:first-child {
  margin-bottom: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > * > div:first-child > div {
  padding: 0.4rem !important;
  border-radius: 0.75rem !important;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > * > div:first-child > div svg {
  width: 1rem;
  height: 1rem;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > * > div:first-child > span {
  display: none;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > * > div:last-child > p:first-child {
  margin-bottom: 0.125rem !important;
  font-size: 0.75rem !important;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > * > div:last-child > p:nth-child(2) {
  overflow-wrap: anywhere;
  margin-bottom: 0.125rem !important;
  font-size: 1.125rem !important;
  line-height: 1.5rem;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > * > div:last-child > p.text-gray-900 {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > * > div:last-child > :nth-child(3) {
  font-size: 0.6875rem !important;
  line-height: 1rem;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > .fixnow-codash-stat-month {
  padding: 1rem 1.125rem !important;
  background: linear-gradient(135deg, var(--app-navy) 0%, var(--app-navy-light) 100%) !important;
  box-shadow: 0 12px 28px rgba(29, 53, 87, 0.25) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > .fixnow-codash-stat-month > div:first-child > div {
  background: rgba(255, 255, 255, 0.15) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > .fixnow-codash-stat-month > div:last-child > p:first-child {
  color: rgba(255, 255, 255, 0.75) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > .fixnow-codash-stat-month > div:last-child > p:nth-child(2) {
  font-size: 1.625rem !important;
  line-height: 2rem;
  color: #fff !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > .fixnow-codash-stat-month > div:last-child > :nth-child(3) {
  color: rgba(255, 255, 255, 0.75) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats > .fixnow-codash-stat-month .text-purple-600 {
  color: var(--app-gold) !important;
}

/* ===== 區塊卡片 ===== */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-section {
  padding: 1rem !important;
  border: none !important;
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-section h2 {
  margin-bottom: 0 !important;
  font-size: 1rem !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-section > h2,
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-section > div:first-child:has(> h2) {
  margin-bottom: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-section > div:first-child:has(> h2) > button {
  padding: 0.25rem 0.625rem !important;
  border-radius: 9999px !important;
  background: var(--app-tint);
  color: var(--app-navy) !important;
  font-size: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-pair {
  gap: 1rem !important;
}

/* 客服案件接收中心：三格並排 */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-cs-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-cs-grid > * {
  min-width: 0;
  padding: 0.625rem !important;
  border: none !important;
  border-radius: 0.875rem !important;
  background: var(--app-tint) !important;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-cs-grid > * > div:first-child {
  margin-bottom: 0.25rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-cs-grid > * > div:first-child > div,
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-cs-grid > * > p:last-child {
  display: none;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-cs-grid > * > div:first-child > p {
  font-size: 0.6875rem !important;
  line-height: 1rem;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-cs-grid > * > p:nth-child(2) {
  margin-bottom: 0 !important;
  font-size: 1.125rem !important;
  color: var(--app-navy) !important;
}

/* 統包待辦 */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-todo {
  gap: 1rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-todo > div > div {
  padding: 0.875rem !important;
  border-width: 1px !important;
  border-radius: 1rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-todo > div > div p.text-lg {
  font-size: 0.9375rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-todo button {
  min-height: 2.25rem;
  border-radius: 0.75rem !important;
}

/* 部門統計：可橫向滑動 */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-dept-grid {
  display: flex !important;
  gap: 0.625rem !important;
  margin: 0 -1rem;
  padding: 0 1rem 0.25rem;
  overflow-x: auto;
  scrollbar-width: none;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-dept-grid::-webkit-scrollbar {
  display: none;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-dept-grid > * {
  flex: 0 0 8.5rem;
  padding: 0.75rem !important;
  border-width: 1px !important;
  border-radius: 1rem !important;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-dept-grid > * > div:first-child {
  margin-bottom: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-dept-grid > * > div:first-child > div {
  padding: 0.3rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-dept-grid > * > div:first-child svg {
  width: 0.875rem;
  height: 0.875rem;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-dept-grid > * > div:last-child > * + * {
  margin-top: 0.25rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-dept-grid > * span.text-sm {
  font-size: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-dept-grid > * span.text-lg {
  font-size: 0.9375rem !important;
}

/* 部門績效對比：標題與部門篩選上下排列，篩選可橫向滑動 */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-chart-head {
  flex-direction: column;
  align-items: stretch !important;
  gap: 0.625rem;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-chart-head > div {
  flex-wrap: nowrap !important;
  gap: 0.375rem !important;
  margin: 0 -1rem;
  padding: 0 1rem;
  overflow-x: auto;
  scrollbar-width: none;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-chart-head > div::-webkit-scrollbar {
  display: none;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-chart-head > div > div:first-child {
  display: none !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-chart-head > div > button {
  flex-shrink: 0;
  padding: 0.3rem 0.75rem !important;
  border-radius: 9999px !important;
  font-size: 0.75rem !important;
  white-space: nowrap;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-chart-head > div > button.bg-blue-600 {
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-chart-head + .grid {
  gap: 1rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-chart-head + .grid h3 {
  margin-bottom: 0.5rem !important;
  font-size: 0.8125rem !important;
  color: #475569 !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-section .border-dashed {
  height: 10rem !important;
  border: none !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-section .recharts-surface {
  overflow: visible;
}

/* 員工管理／案件分配 */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-pair .space-y-4 > :not(:first-child) {
  margin-top: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-pair .space-y-4 > div.p-4 {
  padding: 0.75rem !important;
  border: none !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-pair .space-y-4 > div.p-4 > span {
  padding: 0.125rem 0.625rem !important;
  border-radius: 9999px !important;
  font-size: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-pair .space-y-4 > div.p-4 p.font-bold {
  color: var(--app-navy) !important;
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-pair .space-y-4 > button {
  margin-top: 0.875rem !important;
  min-height: 2.75rem;
  border-radius: 0.875rem !important;
  background: var(--app-navy) !important;
  box-shadow: none !important;
}

/* 性能指標 */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-pair .bg-gray-200.rounded-full {
  background: var(--app-tint) !important;
}

/* ===== 最近案件 ===== */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-section .space-y-4:has(> .fixnow-codash-recent-row) > * + * {
  margin-top: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-recent-row {
  align-items: flex-start !important;
  gap: 0.5rem;
  padding: 0.875rem !important;
  border: none !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-recent-row > div:first-child {
  min-width: 0;
  gap: 0 !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-recent-row > div:first-child > div:first-child {
  display: none;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-recent-row > div:first-child > div:last-child {
  min-width: 0;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-recent-row > div:first-child > div:last-child > div {
  flex-wrap: wrap;
  gap: 0.25rem 0.375rem !important;
  margin-bottom: 0.25rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-recent-row p.text-lg {
  font-size: 0.9375rem !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-recent-row > div:first-child span.rounded-full {
  padding: 0.0625rem 0.5rem !important;
  font-size: 0.6875rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-recent-row > div:first-child .text-sm {
  font-size: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-recent-row > div:last-child {
  flex-shrink: 0;
  margin-left: 0 !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-recent-row > div:last-child > p:first-child {
  font-size: 0.9375rem !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-recent-row > div:last-child > p:last-child {
  display: none;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-section .text-center.py-12 {
  padding: 1.5rem 0 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-section .text-center.py-12 > div:first-child {
  width: 3.5rem;
  height: 3.5rem;
  background: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-section .text-center.py-12 > div:first-child svg {
  width: 1.5rem;
  height: 1.5rem;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-section .text-center.py-12 > p {
  margin-bottom: 1rem !important;
  font-size: 0.9375rem !important;
}

html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-section .text-center.py-12 > button {
  border-radius: 0.875rem !important;
  background: var(--app-navy) !important;
  box-shadow: none !important;
}

/* ===== 區塊順序：常用在上，分析類在下 ===== */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-header { order: 0; }
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-alert { order: 1; }
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-stats { order: 2; }
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-block-todo { order: 3; }
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-block-recent { order: 4; }
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-trend { order: 5; }

/* 收入趨勢要單獨排序，外層兩欄容器在 App 版不參與排版 */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-block-insights {
  display: contents;
}

/* 客服中心、員工管理／案件分配、部門統計、部門績效對比、性能指標在 App 版隱藏；
   Premium 數據分析報告在 App 版改放公司資料頁（電腦版照常顯示） */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style :is(
  .fixnow-codash-block-cs,
  .fixnow-codash-block-manage,
  .fixnow-codash-block-dept,
  .fixnow-codash-block-chart,
  .fixnow-codash-perf,
  .fixnow-codash-block-premium
) {
  display: none;
}

/* ===== 收入趨勢：無資料時縮小佔位 ===== */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-trend > div.h-\[250px\] {
  height: 6rem !important;
  border-radius: 1rem;
  background: var(--app-bg);
  font-size: 0.875rem;
}

/* ===== 最近案件：只顯示前 3 筆，其餘從「查看全部」進入 ===== */
html .fixnow-app-page.fixnow-page-dashboard.fixnow-codash-app-style .fixnow-codash-block-recent .fixnow-codash-recent-row:nth-child(n + 4) {
  display: none;
}
/**
 * 公司收入統計頁（/company/earnings）的 App 風格：原生 App 與手機寬度（< 768px）的網頁會套用
 * （由 CompanyEarningsPage 在最外層加上 fixnow-coearn-app-style）；電腦版不受影響。
 */
html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-gold: #f5c542;
  --app-radius-lg: 1.25rem;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
  padding-top: 0 !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-container {
  padding: 1rem 1rem 1.5rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-container > * {
  margin-bottom: 1rem !important;
}

/* ===== 標題 ===== */
html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-header h1 {
  font-size: 1.375rem !important;
  line-height: 1.75rem !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-header p {
  margin-top: 0.25rem !important;
  font-size: 0.8125rem;
  color: #64748b !important;
}

/* ===== 期間／篩選／匯出 ===== */
html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-toolbar {
  padding: 0.875rem !important;
  border: none !important;
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-toolbar > div:first-child {
  gap: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-toolbar > div:first-child > div:first-child {
  flex-direction: row !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.375rem 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-toolbar > div:first-child > div:first-child > label {
  flex-basis: 100%;
  font-size: 0.75rem !important;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-toolbar > div:first-child > div:first-child > select {
  flex: 1 1 0%;
  width: auto !important;
  min-width: 0;
  min-height: 2.5rem;
  border-color: transparent !important;
  border-radius: 0.875rem !important;
  background-color: var(--app-bg) !important;
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-toolbar > div:first-child > div:first-child > button {
  width: auto !important;
  min-height: 2.5rem;
  border-radius: 0.875rem !important;
  font-size: 0.875rem;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-toolbar > div:first-child > div:first-child > button.bg-blue-600 {
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-toolbar > div:first-child > div:first-child > button.bg-gray-100 {
  background: var(--app-tint) !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-toolbar > div:first-child > div:last-child > button {
  min-height: 2.75rem;
  border-radius: 0.875rem !important;
  background: var(--app-coral) !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-filters {
  margin-top: 0.75rem !important;
  padding-top: 0.75rem !important;
  border-color: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-filters > .grid {
  gap: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-filters label {
  margin-bottom: 0.25rem !important;
  font-size: 0.75rem !important;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-filters :is(input, select) {
  min-width: 0;
  min-height: 2.5rem;
  border-color: transparent !important;
  border-radius: 0.75rem !important;
  background-color: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-filters > div:last-child button {
  border-radius: 9999px !important;
  background: var(--app-tint) !important;
  color: var(--app-navy) !important;
  font-weight: 600;
}

/* ===== 待入帳款項 ===== */
html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-pending {
  padding: 0.875rem !important;
  border-width: 0 0 0 4px !important;
  border-radius: 1rem !important;
  background: #fff7ed !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-pending > div:first-child {
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-bottom: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-pending > div:first-child > div:first-child > div:first-child {
  display: none;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-pending h3 {
  font-size: 0.9375rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-pending > div:first-child > button {
  flex: 1 1 100%;
  justify-content: center;
  min-height: 2.5rem;
  border-radius: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-pending > div:last-child {
  padding: 0.75rem !important;
  border: none !important;
  border-radius: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-pending > div:last-child > div:first-child .text-2xl {
  font-size: 1.25rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-pending > div:last-child > .grid {
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-pending > div:last-child > .grid > * {
  border: none !important;
  border-radius: 0.75rem !important;
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-pending > div:last-child > .grid button {
  min-height: 2rem;
  padding: 0.25rem 0.75rem !important;
  border-radius: 9999px !important;
}

/* ===== 主要統計：首張深藍主卡＋兩欄小卡 ===== */
html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > * {
  min-width: 0;
  padding: 0.875rem !important;
  border: none !important;
  border-radius: 1.125rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > * > .flex {
  flex-direction: column;
  align-items: flex-start !important;
  gap: 0.5rem;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > * > .flex > div:first-child {
  padding: 0.4rem !important;
  border-radius: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > * > .flex > div:first-child svg {
  width: 1rem;
  height: 1rem;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > * > .flex > div:last-child {
  min-width: 0;
  margin-left: 0 !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > * > .flex > div:last-child > p:first-child {
  font-size: 0.75rem !important;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > * > .flex > div:last-child > p:nth-child(2) {
  overflow-wrap: anywhere;
  font-size: 1.125rem !important;
  line-height: 1.5rem;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > * > .flex > div:last-child > :nth-child(3) {
  font-size: 0.6875rem !important;
  line-height: 1rem;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > :first-child {
  grid-column: 1 / -1;
  padding: 1rem 1.125rem !important;
  background: linear-gradient(135deg, var(--app-navy) 0%, var(--app-navy-light) 100%) !important;
  box-shadow: 0 12px 28px rgba(29, 53, 87, 0.25) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > :first-child > .flex > div:first-child {
  background: rgba(255, 255, 255, 0.15) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > :first-child > .flex > div:first-child svg {
  color: #fff !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > :first-child > .flex > div:last-child > p:first-child {
  color: rgba(255, 255, 255, 0.75) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > :first-child > .flex > div:last-child > p:nth-child(2) {
  font-size: 1.625rem !important;
  line-height: 2rem;
  color: #fff !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > :first-child > .flex > div:last-child > :nth-child(3),
html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > :first-child > .flex > div:last-child > :nth-child(3) :is(span, svg) {
  color: rgba(255, 255, 255, 0.8) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-stats > :first-child > .flex > div:last-child > :nth-child(3) span.text-green-600 {
  color: var(--app-gold) !important;
}

/* ===== 區塊卡片 ===== */
html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-pair {
  gap: 1rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style :is(.fixnow-coearn-section, .fixnow-coearn-expense) {
  border: none !important;
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-section {
  padding: 1rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style :is(.fixnow-coearn-section, .fixnow-coearn-expense) h2 {
  margin-bottom: 0.75rem !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--app-navy) !important;
}

/* 財務摘要 */
html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-section > .space-y-4 > :not(:first-child) {
  margin-top: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-section > .space-y-4 {
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-section > .space-y-4 > .border-t {
  padding-top: 0.625rem !important;
  border-color: var(--app-tint) !important;
}

/* 節省分析 */
html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-section > .grid {
  gap: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-section > .grid > div {
  padding: 0.875rem !important;
  border: none !important;
  border-radius: 1rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-section > .grid > div .text-3xl {
  font-size: 1.375rem !important;
  line-height: 1.75rem;
}

/* 支付方式分析 */
html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-section > .flex-col {
  gap: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-section .space-y-3 > div.bg-gray-50 {
  border-radius: 0.875rem !important;
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-section .recharts-surface {
  overflow: visible;
}

/* 支出明細來源 */
html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-expense > button {
  gap: 0.75rem;
  padding: 1rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-expense > button h2 {
  margin-bottom: 0 !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-expense > button p {
  font-size: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-expense > div {
  padding: 0.75rem 1rem 1rem !important;
  border-color: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-expense > div > :not(:first-child) {
  margin-top: 1.25rem !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-expense .overflow-x-auto {
  border: none !important;
  border-radius: 0.875rem !important;
  background: var(--app-bg);
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-expense table {
  font-size: 0.8125rem;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-expense :is(thead, tfoot) {
  background: var(--app-tint) !important;
}

/* ===== 匯出報表：底部抽屜 ===== */
html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-modal {
  z-index: 200 !important;
  align-items: flex-end !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-sheet {
  max-width: 100% !important;
  margin: 0 !important;
  padding: 1.25rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom, 0px)) !important;
  border: none !important;
  border-radius: var(--app-radius-lg) var(--app-radius-lg) 0 0 !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-sheet h3 {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-sheet .space-y-3 > button {
  border: none !important;
  border-radius: 1rem !important;
  background: var(--app-bg);
  text-align: left;
}

html .fixnow-app-page.fixnow-page-company-earnings.fixnow-coearn-app-style .fixnow-coearn-sheet > div:last-child {
  margin-top: 1rem !important;
  border-color: var(--app-tint) !important;
}
/**
 * 公司員工管理頁（/company/employees）的 App 風格：原生 App 與手機寬度（< 768px）的網頁會套用
 * （由 CompanyEmployeesPage 在最外層加上 fixnow-coemp-app-style）；電腦版不受影響。
 * 員工列表表格在 App 改以卡片排列；考勤、請假、薪資表格欄位多，維持橫向捲動。
 */
html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-radius-lg: 1.25rem;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
}

/* ===== 標題列 ===== */
html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-topbar {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-topbar > div {
  padding: 0 1rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-topbar .py-6 {
  padding: 1rem 0 0 !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-topbar h1 {
  font-size: 1.375rem !important;
  line-height: 1.75rem !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-topbar p {
  margin-top: 0.25rem !important;
  font-size: 0.8125rem !important;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-topbar button {
  min-height: 2.75rem;
  border-radius: 0.875rem !important;
  background: var(--app-coral) !important;
  font-weight: 600;
}

/* ===== 內容 ===== */
html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-container {
  padding: 0.875rem 1rem 1.5rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-container > * {
  margin-bottom: 1rem !important;
}

/* 統計：三格並排 */
html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-stats {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style :is(.fixnow-coemp-stats, .fixnow-coemp-salary-stats) > * {
  min-width: 0;
  padding: 0.75rem !important;
  border: none !important;
  border-radius: 1rem !important;
  background: #fff !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style :is(.fixnow-coemp-stats, .fixnow-coemp-salary-stats) > * > .flex {
  flex-direction: column;
  align-items: flex-start !important;
  gap: 0.375rem;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style :is(.fixnow-coemp-stats, .fixnow-coemp-salary-stats) > * > .flex > div:first-child {
  padding: 0.3rem !important;
  border-radius: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style :is(.fixnow-coemp-stats, .fixnow-coemp-salary-stats) > * > .flex > div:first-child svg {
  width: 0.875rem;
  height: 0.875rem;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style :is(.fixnow-coemp-stats, .fixnow-coemp-salary-stats) > * > .flex > div:last-child {
  min-width: 0;
  margin-left: 0 !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style :is(.fixnow-coemp-stats, .fixnow-coemp-salary-stats) > * > .flex > div:last-child > p:first-child {
  font-size: 0.6875rem !important;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style :is(.fixnow-coemp-stats, .fixnow-coemp-salary-stats) > * > .flex > div:last-child > p:last-child {
  overflow-wrap: anywhere;
  font-size: 1.25rem !important;
  line-height: 1.5rem;
  color: var(--app-navy) !important;
}

/* 分頁＋篩選卡 */
html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-tabs-card {
  padding: 0.875rem !important;
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-tabs {
  gap: 0.25rem;
  margin-bottom: 0.875rem !important;
  padding: 0.25rem !important;
  border-radius: 9999px !important;
  background: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-tabs > button {
  margin-left: 0 !important;
  min-height: 2.25rem;
  padding: 0.25rem 0.375rem !important;
  border-radius: 9999px !important;
  color: #475569 !important;
  font-size: 0.8125rem;
  font-weight: 600;
  white-space: nowrap;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-tabs > button svg {
  display: none;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-tabs > button.bg-white {
  background: var(--app-navy) !important;
  color: #fff !important;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-tabs:last-child {
  margin-bottom: 0 !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-tabs-card > .flex-col {
  gap: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-tabs-card > .flex-col > div:first-child {
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-tabs-card :is(input, select) {
  min-width: 0;
  min-height: 2.75rem;
  border-color: transparent !important;
  border-radius: 0.875rem !important;
  background-color: var(--app-bg) !important;
  font-size: 0.875rem;
}

/* 狀態篩選：可橫向滑動的膠囊 */
html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-tabs-card > .flex-col > div:last-child {
  flex-wrap: nowrap !important;
  gap: 0.375rem !important;
  overflow-x: auto;
  scrollbar-width: none;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-tabs-card > .flex-col > div:last-child::-webkit-scrollbar {
  display: none;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-tabs-card > .flex-col > div:last-child > button {
  flex-shrink: 0;
  padding: 0.3rem 0.875rem !important;
  border-radius: 9999px !important;
  font-size: 0.8125rem !important;
  font-weight: 600;
  white-space: nowrap;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-tabs-card > .flex-col > div:last-child > button.bg-blue-600 {
  background: var(--app-navy) !important;
  border-radius: 9999px !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-tabs-card > .flex-col > div:last-child > button.bg-gray-100 {
  background: var(--app-tint) !important;
  color: var(--app-navy) !important;
}

/* 考勤查詢列 */
html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-attendance-bar {
  flex-wrap: wrap;
  gap: 0.5rem;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-attendance-bar > div {
  flex: 1 1 100%;
  flex-wrap: wrap;
  gap: 0.375rem 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-attendance-bar > div > label {
  flex-basis: 100%;
  font-size: 0.75rem !important;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-attendance-bar > div > input {
  flex: 1 1 0%;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-attendance-bar > button {
  flex: 1 1 100%;
  min-height: 2.5rem;
  border-radius: 0.875rem !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-attendance-bar > button.bg-green-600,
html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-panel > div:first-child button.bg-blue-600 {
  background: var(--app-navy) !important;
}

/* ===== 列表／表格卡片 ===== */
html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-panel {
  overflow: hidden;
  border-radius: var(--app-radius-lg) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-panel > div:first-child {
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 0.875rem 1rem !important;
  border-color: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-panel > div:first-child h3 {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-panel > div:first-child button {
  padding: 0.375rem 0.75rem !important;
  border-radius: 9999px !important;
  font-size: 0.75rem !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-panel > div:first-child > div {
  flex-wrap: wrap;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-panel > .px-6.py-4.bg-gray-50 {
  padding: 0.75rem 1rem !important;
  border-color: var(--app-tint) !important;
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-panel > .px-6.py-4.bg-gray-50 > .grid {
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-panel table:not(.fixnow-coemp-table) :is(th, td) {
  padding: 0.625rem 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-panel .mx-6 {
  margin-left: 1rem !important;
  margin-right: 1rem !important;
  border-radius: 0.875rem !important;
}

/* 員工列表：每列改為卡片（頭像＋姓名／部門＋狀態／操作） */
html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table,
html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody {
  display: block;
  width: 100%;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > thead {
  display: none;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody > tr {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.5rem 0.75rem;
  padding: 0.875rem 1rem;
  border-color: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody > tr > td {
  display: block;
  min-width: 0;
  padding: 0 !important;
  white-space: normal !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody > tr > td:nth-child(1) {
  grid-column: 1 / -1;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody > tr > td:nth-child(1) .ml-4 {
  min-width: 0;
  margin-left: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody > tr > td:nth-child(1) .ml-4 > div:first-child {
  font-size: 0.9375rem !important;
  font-weight: 700 !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody > tr > td:nth-child(1) .ml-4 > div:last-child {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody > tr > td:nth-child(2) {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
  font-size: 0.75rem;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody > tr > td:nth-child(2) > div {
  padding: 0.0625rem 0.5rem;
  border-radius: 9999px;
  background: var(--app-tint);
  color: var(--app-navy) !important;
  font-size: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody > tr > td:nth-child(2) > div:empty {
  display: none;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody > tr > td:nth-child(4) {
  grid-column: 1 / -1;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody > tr > td:nth-child(4) > div {
  gap: 0.5rem;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody > tr > td:nth-child(4) > div > button {
  flex: 1 1 0%;
  justify-content: center;
  min-height: 2.25rem;
  margin-left: 0 !important;
  border-radius: 0.75rem;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody > tr > td:nth-child(4) > div > button.text-blue-600 {
  background: var(--app-tint);
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-table > tbody > tr > td:nth-child(4) > div > button.text-red-600 {
  background: #fff1f2;
}

/* ===== 薪資管理 ===== */
html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-stats {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-stats > :last-child {
  grid-column: 1 / -1;
  background: linear-gradient(135deg, var(--app-navy) 0%, var(--app-navy-light) 100%) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-stats > :last-child > .flex > div:first-child {
  background: rgba(255, 255, 255, 0.15) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-stats > :last-child > .flex > div:first-child svg {
  color: #fff !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-stats > :last-child > .flex > div:last-child > p:first-child {
  color: rgba(255, 255, 255, 0.75) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-stats > :last-child > .flex > div:last-child > p:last-child {
  color: #fff !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-bar {
  flex-direction: column;
  align-items: stretch !important;
  gap: 0.625rem;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-bar > h3 {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-bar > div {
  flex-wrap: wrap;
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-bar > div > label {
  flex-basis: 100%;
  font-size: 0.75rem !important;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-bar > div > input {
  flex: 1 1 100%;
  min-width: 0;
  min-height: 2.5rem;
  border-color: transparent !important;
  border-radius: 0.875rem !important;
  background: #fff;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-bar > div > button {
  flex: 1 1 calc(50% - 0.25rem);
  justify-content: center;
  min-height: 2.5rem;
  border-radius: 0.875rem !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-bar > div > button.bg-blue-600 {
  background: var(--app-tint) !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-bar > div > button.bg-purple-600 {
  background: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixnow-coemp-salary-bar > div > button.bg-indigo-600 {
  background: var(--app-navy) !important;
}

/* ===== 彈窗（含新增員工）：底部抽屜，蓋過頂欄與底部導覽 ===== */
html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixed.inset-0.z-50 {
  z-index: 200 !important;
  align-items: flex-end !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixed.inset-0.z-50 > * {
  width: 100%;
  max-width: 100% !important;
  max-height: 88vh !important;
  margin: 0 !important;
  overflow-y: auto;
  padding-bottom: env(safe-area-inset-bottom, 0px);
  border-radius: var(--app-radius-lg) var(--app-radius-lg) 0 0 !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixed.inset-0.z-50 > * > .p-6 {
  padding: 1.25rem 1rem !important;
}

html .fixnow-app-page.fixnow-page-company-employees.fixnow-coemp-app-style .fixed.inset-0.z-50 > * :is(h2, h3).text-xl {
  font-size: 1.125rem !important;
  color: var(--app-navy) !important;
}
/**
 * 登入／註冊（/auth）的 App 風格：原生 App 與手機寬度（< 768px）的網頁會套用
 * （由 AuthPage 在最外層加上 fixnow-auth-app-style）；電腦版不受影響。
 */
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  flex: 1 1 auto !important;
  width: 100% !important;
  min-height: 100dvh !important;
  min-height: 100vh;
  padding: calc(0.75rem + env(safe-area-inset-top, 0px)) 1rem
    calc(1.25rem + max(16px, env(safe-area-inset-bottom, 0px))) !important;
  background: linear-gradient(
    180deg,
    var(--app-navy) 0%,
    var(--app-navy-light) 26%,
    var(--app-bg) 52%,
    var(--app-bg) 100%
  ) !important;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-brand {
  margin-bottom: 0.5rem;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style > div {
  margin-top: 0.5rem !important;
  flex: 1;
  width: 100%;
  max-width: 28rem;
  margin-left: auto;
  margin-right: auto;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style > div > * + * {
  margin-top: 1.25rem !important;
}

/* ===== 標題（深藍底上白字） ===== */
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style > div > .text-center:first-child h2,
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-heading h2 {
  font-size: 1.625rem !important;
  line-height: 2.125rem;
  color: #fff !important;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style > div > .text-center:first-child p,
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-heading p {
  color: rgba(255, 255, 255, 0.8) !important;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style > div > .text-center:first-child p span,
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-heading p button {
  color: #ffc2c7 !important;
  font-weight: 700;
}

/* ===== 表單白卡 ===== */
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style > div > form,
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style > div > .mt-8.space-y-6,
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-picker {
  padding: 1.25rem !important;
  border-radius: 1.5rem;
  background: #fff;
  box-shadow: 0 8px 24px rgba(29, 53, 87, 0.08);
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-form > :first-child {
  margin-top: 0 !important;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-form h3 {
  color: var(--app-navy) !important;
}

/* 客戶註冊卡內的標題與頁首重複 */
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-form > .space-y-6 > .text-center.mb-6:first-child {
  display: none;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-form > .space-y-6 > .text-center.mb-6:first-child + * {
  margin-top: 0 !important;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style label {
  color: #475569 !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
}

html
  .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style
  :is(input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='file']), select, textarea) {
  min-height: 3rem;
  border-radius: 0.875rem !important;
  font-size: 0.9375rem;
}

html
  .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style
  :is(input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='file']), select, textarea).border-gray-300 {
  border-color: transparent !important;
  background-color: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style :is(input, select, textarea):focus {
  border-color: var(--app-navy-light) !important;
  background-color: #fff !important;
  box-shadow: 0 0 0 3px rgba(39, 76, 119, 0.15) !important;
  --tw-ring-color: transparent;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style :is(form, .mt-8) button.text-blue-600 {
  color: var(--app-navy-light) !important;
  font-weight: 600;
}

/* ===== 按鈕 ===== */
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style button[type='submit'],
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style button.w-full.bg-blue-600,
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style button.w-full.bg-green-600 {
  min-height: 3rem;
  border-radius: 1rem !important;
  background-color: var(--app-coral) !important;
  font-weight: 700;
  box-shadow: 0 8px 20px rgba(230, 57, 70, 0.25);
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style button.w-full.bg-gray-200 {
  min-height: 3rem;
  border-radius: 1rem !important;
  background-color: var(--app-tint) !important;
  color: var(--app-navy) !important;
  font-weight: 600;
}

/* 註冊類型選擇：客戶主色、工匠／公司深藍 */
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-picker > button {
  min-height: 3.25rem;
  border-radius: 1rem !important;
  font-weight: 700;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-picker > button.bg-blue-600 {
  background-color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-picker > button.bg-indigo-600 {
  background-color: var(--app-navy-light) !important;
}

/* ===== 登入：帳密在上、第三方登入移到下方 ===== */
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-login {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 0 !important;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-login > * {
  margin: 0 !important;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-oauth {
  order: 99;
  margin-top: 0.25rem !important;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-oauth span.bg-gray-50 {
  background: #fff !important;
  font-size: 0.75rem;
  color: #94a3b8 !important;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-oauth .border-t {
  border-color: #e2e8f0 !important;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-oauth .grid > button {
  flex-direction: row !important;
  gap: 0.5rem;
  min-height: 3rem;
  border: none !important;
  border-radius: 1rem !important;
  background: var(--app-bg);
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-oauth .grid > button > span {
  margin-top: 0 !important;
  font-size: 0.875rem !important;
  font-weight: 600;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-oauth .grid > button svg {
  width: 1.25rem;
  height: 1.25rem;
}

/* ===== 登入卡片下方的信任資訊 ===== */
html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-trust {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-trust-guarantees {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-trust-guarantees > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0.75rem 0.25rem;
  border-radius: 1rem;
  background: #fff;
  box-shadow: 0 8px 24px rgba(29, 53, 87, 0.08);
  text-align: center;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-trust-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 0.75rem;
  background: var(--app-tint);
  color: var(--app-navy-light);
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-trust-payment {
  padding: 0.875rem 1rem;
  border-radius: 1.25rem;
  background: #fff;
  box-shadow: 0 8px 24px rgba(29, 53, 87, 0.08);
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-trust-caption {
  margin-bottom: 0.5rem;
  color: #94a3b8;
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-trust-services {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-trust-service {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  min-height: 4.5rem;
  padding: 0.625rem 0.5rem;
  border: 1px solid #e2e8f0;
  border-radius: 0.875rem;
  background: #fff;
  text-align: center;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-trust-service-logo {
  max-width: 100%;
  height: 2.25rem;
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-trust-service-icon {
  width: 2rem;
  height: 2rem;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-trust-service-name {
  color: var(--app-navy);
  font-size: 0.875rem;
  font-weight: 800;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-trust-service-desc {
  color: #64748b;
  font-size: 0.6875rem;
  line-height: 1rem;
}

html .fixnow-app-page.fixnow-page-auth.fixnow-auth-app-style .fixnow-auth-trust-company {
  color: #94a3b8;
  font-size: 0.6875rem;
  text-align: center;
}
/**
 * 客戶儀表板（/customer/dashboard）的 App 風格：原生 App 與手機寬度（< 768px）的網頁會套用
 * （由 CustomerDashboardPage 在最外層加上 fixnow-custdash-app-style）；電腦版不受影響。
 */
html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-container {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1rem 1rem 1.5rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-container > * {
  margin-bottom: 0 !important;
}

/* ===== 標題 ===== */
html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-header h1 {
  margin-bottom: 0.25rem !important;
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
  line-height: 1.75rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-header p {
  font-size: 0.875rem !important;
  color: #64748b !important;
}

/* ===== 智能搜尋 ===== */
html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-search input {
  min-height: 3.25rem;
  padding-top: 0.75rem !important;
  padding-bottom: 0.75rem !important;
  padding-left: 2.75rem !important;
  border-color: transparent !important;
  border-radius: 1.125rem !important;
  background: #fff !important;
  box-shadow: var(--app-shadow-card) !important;
  font-size: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-search input:focus {
  box-shadow: 0 0 0 2px var(--app-navy-light), var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-search > .relative > svg:first-child {
  left: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-search > .relative > .absolute {
  right: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-search button.bg-blue-600 {
  background: var(--app-navy) !important;
  border-radius: 0.75rem !important;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-search > .mt-3 {
  padding: 0.75rem !important;
  border: none !important;
  border-radius: 1rem !important;
  background: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-search > .mt-3 > .flex {
  flex-wrap: wrap;
  gap: 0.5rem;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-search > .mt-3 > .flex > .flex-1 {
  flex-basis: 100%;
  min-width: 0;
  word-break: break-word;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-search > .mt-3 > .flex > .ml-4 {
  margin-left: 0 !important;
}

/* ===== 緊急維修 ===== */
html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-urgent {
  padding: 1rem !important;
  border: none !important;
  border-radius: 1.25rem !important;
  background: linear-gradient(135deg, #fff1f2 0%, #fff7ed 100%) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-urgent > div {
  flex-wrap: wrap;
  gap: 0.875rem;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-urgent > div > div {
  min-width: 0;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-urgent > div > div > div:first-child {
  margin-right: 0.75rem !important;
  padding: 0.625rem !important;
  background: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-urgent h3 {
  color: #9f1239 !important;
  font-size: 1.0625rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-urgent p {
  font-size: 0.8125rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-urgent > div > button {
  width: 100%;
  min-height: 3rem;
  padding: 0.75rem 1rem !important;
  border-radius: 1rem !important;
  background: var(--app-coral) !important;
  box-shadow: 0 8px 18px rgba(230, 57, 70, 0.25) !important;
}

/* ===== 進行中的服務、師傅已回覆報價 ===== */
html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style :is(.fixnow-custdash-active, .fixnow-custdash-nego) {
  padding: 1rem !important;
  border: none !important;
  border-radius: 1.25rem !important;
  background: #fff !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style :is(.fixnow-custdash-active, .fixnow-custdash-nego) > .mb-4 {
  margin-bottom: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style :is(.fixnow-custdash-active, .fixnow-custdash-nego) > .mb-4 > div:first-child {
  padding: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-active > .mb-4 > div:first-child {
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style :is(.fixnow-custdash-active, .fixnow-custdash-nego) > .mb-4 > .ml-4 {
  margin-left: 0.75rem !important;
  min-width: 0;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style :is(.fixnow-custdash-active, .fixnow-custdash-nego) h3 {
  color: var(--app-navy) !important;
  font-size: 1.0625rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style :is(.fixnow-custdash-active, .fixnow-custdash-nego) > .mb-4 p {
  font-size: 0.8125rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-item {
  padding: 0.875rem !important;
  border: none !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-item > div {
  flex-direction: column;
  align-items: stretch !important;
  gap: 0.75rem;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-item h4 {
  color: var(--app-navy) !important;
  word-break: break-word;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-item p > span.rounded-full {
  display: inline-block;
  margin-top: 0.25rem;
  white-space: nowrap;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-item .space-x-4 {
  flex-wrap: wrap;
  gap: 0.25rem 0.75rem;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-item .space-x-4 > * {
  margin-left: 0 !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-item > div > .flex.flex-wrap {
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-item > div > .flex.flex-wrap > * {
  flex: 1 1 auto;
  justify-content: center;
  margin-left: 0 !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-item > div > button,
html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-item > div > .flex.flex-wrap > button {
  min-height: 2.75rem;
  border-radius: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-item > div > button {
  justify-content: center;
  margin-left: 0 !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-item button.bg-blue-600 {
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-item button.bg-purple-600 {
  background: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-item button.bg-orange-600 {
  background: var(--app-coral) !important;
}

/* ===== 統計卡片：兩欄 ===== */
html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-stats {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-stats > * {
  min-width: 0;
  padding: 0.875rem !important;
  border: none !important;
  border-radius: 1.125rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-stats > * > .flex {
  flex-direction: column;
  align-items: flex-start !important;
  gap: 0.5rem;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-stats > * > .flex > div:first-child {
  padding: 0.5rem !important;
  border-radius: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-stats > * > .flex > div:first-child svg {
  width: 1.125rem !important;
  height: 1.125rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-stats > * > .flex > .ml-4 {
  margin-left: 0 !important;
  width: 100%;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-stats p.text-sm {
  margin-bottom: 0.125rem !important;
  font-size: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-stats p.text-2xl {
  color: var(--app-navy) !important;
  font-size: 1.25rem !important;
  line-height: 1.625rem !important;
  overflow-wrap: anywhere;
}

/* ===== 需要協助 ===== */
html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-help {
  padding: 1rem !important;
  border-radius: 1.25rem !important;
  background: linear-gradient(135deg, var(--app-navy) 0%, var(--app-navy-light) 100%) !important;
  box-shadow: 0 10px 24px rgba(29, 53, 87, 0.22) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-help > div {
  flex-wrap: wrap;
  gap: 0.875rem;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-help > div > div {
  min-width: 0;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-help > div > div > div:first-child {
  margin-right: 0.75rem !important;
  padding: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-help h3 {
  font-size: 1.0625rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-help p {
  font-size: 0.8125rem !important;
  color: #c7d4e6 !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-help > div > button {
  width: 100%;
  min-height: 3rem;
  justify-content: center;
  padding: 0.75rem 1rem !important;
  border-radius: 1rem !important;
  color: var(--app-navy) !important;
  box-shadow: none !important;
}

/* ===== 申請維修（已有工匠／找公司） ===== */
html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-options {
  gap: 1rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-options > * {
  min-width: 0;
  padding: 1rem !important;
  border: none !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-options > * > .mb-6:first-child {
  margin-bottom: 0.75rem !important;
  gap: 0.5rem;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-options h2 {
  color: var(--app-navy) !important;
  font-size: 1.0625rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-options > * > .mb-6:first-child > button {
  flex-shrink: 0;
  color: var(--app-navy-light) !important;
  font-size: 0.8125rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-options > * > .space-y-4 {
  margin-bottom: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-options > * > .space-y-4 > * + * {
  margin-top: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-provider {
  flex-wrap: wrap;
  gap: 0.625rem 0;
  padding: 0.75rem !important;
  border: none !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-provider > :first-child {
  width: 2.75rem !important;
  height: 2.75rem !important;
  margin-right: 0.75rem !important;
  flex-shrink: 0;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-provider > .flex-1 {
  min-width: 0;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-provider h3 {
  color: var(--app-navy) !important;
  font-weight: 600 !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-provider > .flex-1 > .flex {
  flex-wrap: wrap;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-provider > button {
  width: 100%;
  min-height: 2.75rem;
  border-radius: 0.875rem !important;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-provider > button.bg-blue-600 {
  background: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-provider > button.bg-green-600 {
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-options .border-dashed {
  padding: 1.25rem 1rem !important;
  border-color: #d5deea !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-options .border-dashed > svg {
  width: 2.5rem !important;
  height: 2.5rem !important;
  color: #94a3b8 !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-options .border-dashed > button {
  min-height: 2.5rem;
  border-radius: 0.875rem !important;
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-options > * > button:last-child {
  min-height: 3rem;
  padding: 0.75rem 1rem !important;
  border: none !important;
  border-radius: 1rem !important;
  background: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-options > * > button:last-child svg {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-custdash.fixnow-custdash-app-style .fixnow-custdash-options > * > button:last-child span {
  color: var(--app-navy) !important;
}
/**
 * 訊息頁（/messages）的 App 風格：原生 App 與手機寬度（< 768px）的網頁會套用
 * （由 MessagesPage 在最外層加上 fixnow-msg-app-style）；電腦版不受影響。
 * 這裡只調整顏色、邊框、圓角與陰影；高度、overflow、display 一律不動，避免影響對話列表與訊息捲動。
 */
html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  background: var(--app-bg) !important;
}

/* ===== 頂部標題列 ===== */
html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-topbar {
  border-bottom-color: var(--app-tint) !important;
  background: #fff !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-topbar h1 {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-topbar h1 .bg-red-500 {
  background: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-topbar button {
  border-radius: 9999px !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-topbar button svg {
  color: var(--app-navy) !important;
}

/* ===== 搜尋與排序 ===== */
html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-search {
  border-bottom-color: var(--app-tint) !important;
  background: #fff !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-search input[type='text'] {
  border-color: transparent !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
  box-shadow: none !important;
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-search input[type='text']:focus {
  border-color: var(--app-navy-light) !important;
  background: #fff !important;
  box-shadow: 0 0 0 2px rgba(39, 76, 119, 0.15) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-sort button {
  border-radius: 9999px !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-sort button.bg-blue-600 {
  background: var(--app-navy) !important;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-sort button.bg-white {
  border-color: transparent !important;
  background: var(--app-bg) !important;
  color: var(--app-navy-light) !important;
}

/* ===== 對話列表 ===== */
html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-list .divide-y > * + * {
  border-color: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-conv.bg-blue-50 {
  background: var(--app-tint) !important;
  border-left-color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-conv.bg-blue-100 {
  background: #e2e9f3 !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-conv .rounded-full.bg-blue-100 {
  background: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-conv.bg-blue-50 .rounded-full.bg-blue-100 {
  background: #fff !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-conv .rounded-full.bg-blue-100 svg {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-conv p.font-medium {
  color: var(--app-navy) !important;
  font-weight: 600 !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-conv span.bg-blue-600 {
  background: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-conv .text-blue-600,
html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-conv .text-blue-500 {
  color: var(--app-navy-light) !important;
}

/* ===== 聊天區 ===== */
html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-chat-head {
  border-bottom-color: var(--app-tint) !important;
  background: #fff !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-chat-head p.font-medium {
  color: var(--app-navy) !important;
  font-weight: 600 !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-chat-head .rounded-full.bg-blue-100 {
  background: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-chat-head .rounded-full.bg-blue-100 svg {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-chat-head button.text-blue-600 {
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-thread {
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-thread span.bg-gray-50 {
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-bubble {
  border-radius: 1.25rem !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-bubble.bg-blue-600 {
  border-bottom-right-radius: 0.375rem !important;
  background: var(--app-navy) !important;
  box-shadow: 0 4px 12px rgba(29, 53, 87, 0.18) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-bubble.bg-gray-100 {
  border-bottom-left-radius: 0.375rem !important;
  background: #fff !important;
  color: #1f2937 !important;
  box-shadow: 0 4px 12px rgba(29, 53, 87, 0.08) !important;
}

/* ===== 輸入列 ===== */
html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-composer {
  border-top-color: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-composer textarea {
  border-color: transparent !important;
  border-radius: 1.5rem !important;
  background: var(--app-bg) !important;
  font-size: 0.9375rem !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-composer textarea:focus {
  border-color: var(--app-navy-light) !important;
  background: #fff !important;
  box-shadow: 0 0 0 2px rgba(39, 76, 119, 0.15) !important;
  --tw-ring-color: transparent !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-composer > .flex > button:not(.bg-blue-600) {
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-composer > .flex > button.bg-blue-600 {
  border-radius: 9999px !important;
  background: var(--app-coral) !important;
  box-shadow: 0 3px 8px rgba(230, 57, 70, 0.25);
}

html .fixnow-app-page.fixnow-page-messages.fixnow-msg-app-style .fixnow-msg-composer > .flex > button.bg-blue-600:disabled {
  box-shadow: none;
}
/**
 * 工匠詳情（/craftsman/:id）與公司詳情（/company/:id）的 App 風格：原生 App 與手機寬度（< 768px）的網頁會套用
 * （由兩個頁面在最外層加上 fixnow-detail-app-style）；電腦版不受影響。
 */
html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
}

/* ===== 頂部列 ===== */
html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-header > .container {
  padding: 0.625rem 1rem !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-header > .container > .flex {
  gap: 0.5rem;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-header > .container > .flex > button:first-child {
  min-width: 0;
  color: var(--app-navy-light) !important;
  font-size: 0.875rem;
  font-weight: 600;
  white-space: nowrap;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-header .fixnow-sticky-cta {
  padding: 0.5rem 1rem !important;
  border-radius: 9999px !important;
  background: var(--app-coral) !important;
  font-size: 0.875rem;
  font-weight: 700;
  white-space: nowrap;
  box-shadow: 0 4px 12px rgba(230, 57, 70, 0.25);
}

/* ===== 主體 ===== */
html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-body {
  padding: 1rem 1rem 1.5rem !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-body > .grid {
  gap: 1rem !important;
}

/* ===== 主卡：深藍、置中 ===== */
html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero {
  margin-bottom: 1rem !important;
  padding: 1.25rem 1rem !important;
  border-radius: 1.25rem !important;
  background: linear-gradient(135deg, var(--app-navy) 0%, #3d5a80 100%) !important;
  box-shadow: 0 10px 24px rgba(29, 53, 87, 0.22) !important;
  color: #fff;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero > .flex {
  flex-direction: column;
  align-items: center !important;
  gap: 0.75rem;
  text-align: center;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero > .flex > * {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero > .flex > img,
html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero > .flex > div:first-child {
  width: 5rem !important;
  height: 5rem !important;
  border: 3px solid #fff;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero > .flex > div:first-child {
  background: rgba(255, 255, 255, 0.15) !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero > .flex > div:first-child img {
  width: 100% !important;
  height: 100% !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero > .flex > div:first-child svg {
  width: 2.25rem;
  height: 2.25rem;
  color: #fff !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero > .flex > .flex-1 {
  width: 100%;
  min-width: 0;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero .flex {
  flex-wrap: wrap;
  justify-content: center !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero h1 {
  color: #fff !important;
  font-size: 1.375rem !important;
  line-height: 1.75rem !important;
  overflow-wrap: anywhere;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero > .flex > .flex-1 > .flex:first-child {
  gap: 0.375rem;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero .space-x-4 {
  gap: 0.25rem 0.875rem;
  color: rgba(255, 255, 255, 0.82) !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero .space-x-4 > * {
  margin-left: 0 !important;
  white-space: nowrap;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero > .flex > .flex-1 > .flex:last-child {
  flex-direction: column;
  gap: 0.5rem;
  margin-top: 0.75rem;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero :is(.text-blue-600, .text-green-600, .text-gray-900) {
  color: #fff !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero :is(.text-gray-600, .text-gray-500, .text-gray-400) {
  color: rgba(255, 255, 255, 0.75) !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero .text-2xl {
  font-size: 1.5rem !important;
  line-height: 2rem !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero .space-x-2 > * {
  margin-left: 0 !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero .space-x-2 {
  gap: 0.375rem;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-hero .bg-yellow-100 {
  background: rgba(245, 197, 66, 0.2) !important;
  color: #f5c542 !important;
}

/* ===== 分頁卡 ===== */
html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-tabs {
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
  overflow: hidden;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-tabs > .border-b {
  border-color: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-tabs nav {
  padding: 0 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-tabs nav > button {
  flex: 1 1 0;
  justify-content: center;
  margin-left: 0 !important;
  padding: 0.875rem 0.25rem !important;
  white-space: nowrap;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-tabs nav > button:is(.border-blue-500, .border-green-500) {
  border-color: var(--app-coral) !important;
  color: var(--app-navy) !important;
  font-weight: 700;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-tabs > .p-6 {
  padding: 1rem !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-tabs h3 {
  color: var(--app-navy) !important;
  font-size: 1rem !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-tabs h3 > svg {
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-tabs .p-4.bg-blue-50 {
  border-color: transparent !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-tabs .grid {
  gap: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-tabs .grid > .bg-gray-50 {
  min-width: 0;
  padding: 0.75rem !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-tabs .grid > .bg-gray-50 .text-2xl {
  font-size: 1.25rem !important;
  line-height: 1.75rem !important;
  overflow-wrap: anywhere;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-tabs .rounded-full.bg-blue-100 {
  background: var(--app-tint) !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-tabs .grid > .border.rounded-lg {
  border-color: transparent !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
}

/* ===== 側欄卡片 ===== */
html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-side.space-y-6 > * + * {
  margin-top: 1rem !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-side > * {
  padding: 1rem !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-side h3 {
  margin-bottom: 0.75rem !important;
  color: var(--app-navy) !important;
  font-size: 1rem !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-side > .bg-blue-50 {
  background: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-side .rounded-full.bg-blue-600 {
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-side button.w-full {
  min-height: 3rem;
  border-radius: 1rem !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-side button.w-full.bg-blue-600 {
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-side > .bg-blue-50 button.w-full.bg-blue-600,
html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-side button.w-full.bg-green-600 {
  background: var(--app-coral) !important;
  box-shadow: 0 6px 14px rgba(230, 57, 70, 0.25);
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-contact > .space-y-4 {
  margin-bottom: 1rem;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-contact > button.mt-6 {
  margin-top: 0 !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-contact .rounded-lg.overflow-hidden {
  border-radius: 1rem !important;
}

/* ===== 公司詳情：手機固定操作欄 ===== */
html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style:has(.fixnow-detail-mobilebar) {
  --detail-bottom-nav-h: 4rem;
  padding-bottom: calc(4.5rem + env(safe-area-inset-bottom, 0px));
}

html.native-app .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style:has(.fixnow-detail-mobilebar) {
  --detail-bottom-nav-h: 4.25rem;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-side .fixnow-detail-mobilebar {
  bottom: calc(var(--detail-bottom-nav-h, 4rem) + 1px + env(safe-area-inset-bottom, 0px)) !important;
  z-index: 80 !important;
  padding: 0.75rem 1rem !important;
  border-radius: 0 !important;
  border-top-color: var(--app-tint) !important;
  box-shadow: 0 -6px 18px rgba(29, 53, 87, 0.08) !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-mobilebar :is(a, button) {
  min-height: 2.75rem;
  border-radius: 1rem !important;
  font-weight: 700;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-mobilebar .bg-green-600 {
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-mobilebar .bg-blue-600 {
  background: var(--app-coral) !important;
}

/* ===== 公司詳情：相似公司 ===== */
html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-similar {
  padding: 0 1rem 1.5rem !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-similar > div {
  padding: 1rem !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-similar h2 {
  color: var(--app-navy) !important;
  font-size: 1.0625rem !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-similar .grid {
  gap: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-detail.fixnow-detail-app-style .fixnow-detail-similar .grid > div {
  border-color: transparent !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
}
/**
 * 客戶通知（/customer/notifications）、工匠通知（/craftsman/notifications）、工匠評價（/craftsman/reviews）的 App 風格：
 * 原生 App 與手機寬度（< 768px）的網頁會套用（各頁在最外層加上 *-app-style）；電腦版不受影響。
 */

/* ======================================================================
 * 客戶通知：版型本來就是手機清單，只統一配色
 * ====================================================================== */
html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-head {
  border-bottom-color: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-head h1 {
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-head > .flex button svg {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-head > .flex .text-red-600 svg {
  color: inherit !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-tabs > button {
  padding: 0.375rem 1rem !important;
  font-size: 0.875rem !important;
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-tabs > button.bg-blue-100 {
  background: var(--app-navy) !important;
  color: #fff !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-head input[type='search'] {
  background: var(--app-bg) !important;
  font-size: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-head input[type='search']:focus {
  box-shadow: 0 0 0 2px rgba(39, 76, 119, 0.2) !important;
  --tw-ring-color: transparent !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-cats > button.bg-gray-100 {
  background: var(--app-bg) !important;
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-cats > button.bg-gray-900 {
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-head p .text-blue-600 {
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-main section {
  border-color: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-main section h2 {
  color: var(--app-navy) !important;
  font-size: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-main section > .flex > button.text-blue-600 {
  color: var(--app-navy-light) !important;
  font-size: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-main ul > * + * {
  border-color: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-item.fixnow-custnotif-unread {
  background: #f7f9fd;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-item .rounded-full.bg-gradient-to-br {
  background: var(--app-tint) !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-item .text-blue-600 {
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-item.fixnow-custnotif-unread .text-blue-600 {
  color: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-item span.bg-\[\#1877F2\] {
  background: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-item button.bg-\[\#1877F2\] {
  border-radius: 0.875rem !important;
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-notifications.fixnow-custnotif-app-style .fixnow-custnotif-item button.bg-gray-100 {
  border-radius: 0.875rem !important;
  background: var(--app-tint) !important;
  color: var(--app-navy) !important;
}

/* ======================================================================
 * 工匠通知
 * ====================================================================== */
html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-container {
  padding: 1rem 1rem 1.5rem !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-header {
  margin-bottom: 1rem !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-header > .flex {
  gap: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-header h1 {
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
  line-height: 1.75rem !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-header h1 svg {
  width: 1.375rem !important;
  height: 1.375rem !important;
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-header > .flex > .flex:first-child > button {
  margin-right: 0.5rem !important;
  border-radius: 9999px !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-header > .flex > .flex:first-child > button svg {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-header p {
  font-size: 0.8125rem !important;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-header > .flex > .flex:last-child > button {
  min-height: 2.75rem;
  border-radius: 0.875rem !important;
  font-size: 0.875rem !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-header > .flex > .flex:last-child > button > span.hidden {
  display: inline;
  margin-left: 0.375rem;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-header > .flex > .flex:last-child > button.bg-blue-600 {
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-header > .flex > .flex:last-child > button.bg-red-600 {
  background: #fde8ea !important;
  color: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-filters {
  margin-bottom: 1rem !important;
  padding: 0.875rem !important;
  border: none !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-filters :is(input, select) {
  border-color: transparent !important;
  border-radius: 0.875rem !important;
  background-color: var(--app-bg) !important;
  font-size: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-filters :is(input, select):focus {
  border-color: var(--app-navy-light) !important;
  --tw-ring-color: rgba(39, 76, 119, 0.2) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-list > div > h3 {
  margin-bottom: 0.5rem !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-list > div > .space-y-3 > * + * {
  margin-top: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-list > div.bg-white,
html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-item {
  padding: 0.875rem !important;
  border-top-color: transparent !important;
  border-right-color: transparent !important;
  border-bottom-color: transparent !important;
  border-radius: 1.125rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-list > div.bg-white {
  border-left-color: transparent !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-item.border-gray-200 {
  border-left-color: transparent !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-item.border-l-blue-500 {
  border-left-color: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-item > .flex > div:first-child {
  padding: 0.5rem !important;
  border-radius: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-item h3 {
  color: var(--app-navy) !important;
  font-size: 0.9375rem !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-item span.bg-blue-500 {
  background: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-item span.bg-gray-100 {
  background: var(--app-tint) !important;
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-item > .flex > .flex-1 > p {
  margin-bottom: 0.5rem !important;
  font-size: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-item button.text-blue-600 {
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-stats {
  margin-top: 1rem !important;
  padding: 0.875rem !important;
  border: none !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-stats .grid {
  gap: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-stats .grid > div {
  padding: 0.75rem !important;
  border-radius: 1rem !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-stats .grid > .bg-blue-50 {
  background: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-stats .grid > .bg-blue-50 > div:first-child {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-craftnotif.fixnow-craftnotif-app-style .fixnow-craftnotif-stats .grid > .bg-red-50 > div:first-child {
  color: var(--app-coral) !important;
}

/* ======================================================================
 * 工匠評價管理
 * ====================================================================== */
html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-container {
  padding: 1rem 1rem 1.5rem !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-header {
  margin-bottom: 1rem !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-header h1 {
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-header p {
  font-size: 0.8125rem !important;
  color: #64748b !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-stats {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.625rem !important;
  margin-bottom: 1rem !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-stats > div {
  min-width: 0;
  padding: 0.875rem !important;
  border-radius: 1.125rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-stats > div:first-child {
  background: linear-gradient(135deg, var(--app-navy) 0%, var(--app-navy-light) 100%) !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-stats > div:first-child p {
  color: rgba(255, 255, 255, 0.75) !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-stats > div:first-child .text-blue-600 {
  color: #fff !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-stats > div:first-child .text-gray-300 {
  color: rgba(255, 255, 255, 0.3) !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-stats .mt-2.flex {
  flex-wrap: wrap;
  gap: 0.25rem 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-stats .text-3xl {
  font-size: 1.625rem !important;
  line-height: 2rem !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-stats > div:last-child .text-3xl {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style :is(.fixnow-craftreviews-policy, .fixnow-craftreviews-filters) {
  margin-bottom: 1rem !important;
  padding: 0.875rem !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-policy .bg-orange-50 {
  border: none !important;
  border-radius: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-filters > .flex-wrap {
  gap: 0.375rem !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-filters > .flex-wrap > button {
  padding: 0.375rem 0.75rem !important;
  font-size: 0.8125rem !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-filters > .flex-wrap > button.bg-blue-600 {
  background: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-filters > .flex-wrap > button.bg-gray-100 {
  background: var(--app-bg) !important;
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-filters input {
  min-height: 2.75rem;
  border-color: transparent !important;
  border-radius: 0.875rem !important;
  background: var(--app-bg) !important;
  font-size: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-filters input:focus {
  --tw-ring-color: rgba(39, 76, 119, 0.25) !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-list {
  padding: 0.875rem !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-list .space-y-4 > * + * {
  margin-top: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-item {
  padding: 0.875rem !important;
  border: none !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-item > .flex:first-child {
  flex-wrap: wrap;
  align-items: flex-start !important;
  gap: 0.5rem;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-item > .flex:first-child > .flex {
  min-width: 0;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-item .rounded-full.bg-blue-100 {
  flex-shrink: 0;
  background: #fff !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-item .flex.items-center.gap-2 {
  flex-wrap: wrap;
  gap: 0.125rem 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-item p.font-semibold {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-item p.text-xs {
  flex-wrap: wrap;
}

html .fixnow-app-page.fixnow-page-craftreviews.fixnow-craftreviews-app-style .fixnow-craftreviews-item > .flex:first-child > button {
  color: var(--app-navy-light) !important;
  font-size: 0.8125rem !important;
  font-weight: 600;
}
/**
 * 付款流程頁（/payment-confirmation、/payment-success、/payment/complete、/payment-failed、/payment/cancel）的 App 風格：
 * 原生 App 與手機寬度（< 768px）的網頁會套用（各頁在最外層加上 fixnow-pay-app-style）；電腦版不受影響。
 */

/* ======================================================================
 * 付款結果頁（成功／確認中／失敗）
 * ====================================================================== */
html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  background: var(--app-bg) !important;
  align-items: flex-start !important;
  padding: 1.5rem 1rem !important;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-card {
  width: 100%;
  background: #fff !important;
  border: none !important;
  border-radius: 1.5rem !important;
  box-shadow: 0 8px 24px rgba(29, 53, 87, 0.08) !important;
  padding: 2rem 1.25rem 1.5rem !important;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-icon {
  width: 5rem;
  height: 5rem;
  margin: 0 auto 1.25rem !important;
  border-radius: 9999px;
  background: #e8f7ee;
  display: flex;
  align-items: center;
  justify-content: center;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-icon.fixnow-pay-icon-red {
  background: #fdecee;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-icon.fixnow-pay-icon-amber {
  background: #fff4e0;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-icon svg {
  width: 3rem !important;
  height: 3rem !important;
  margin: 0 !important;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-card h1 {
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
  line-height: 1.875rem !important;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-card > p {
  font-size: 0.9rem !important;
  line-height: 1.6 !important;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-card svg.text-blue-600 {
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-card button.bg-blue-600 {
  background: var(--app-coral) !important;
  color: #fff !important;
  border-radius: 1rem !important;
  box-shadow: 0 6px 16px rgba(230, 57, 70, 0.25) !important;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-card button.bg-blue-600:hover:not(:disabled) {
  background: #d62f3c !important;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-card button.bg-gray-100,
html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-card button.bg-white {
  background: var(--app-tint) !important;
  border-color: transparent !important;
  color: var(--app-navy) !important;
  border-radius: 1rem !important;
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
  white-space: nowrap;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-card button.bg-amber-50 {
  border-radius: 1rem !important;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-card button.text-blue-600 {
  color: var(--app-navy-light) !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-card .grid.grid-cols-2 {
  gap: 0.75rem !important;
}

html .fixnow-app-page.fixnow-pay-result.fixnow-pay-app-style .fixnow-pay-order {
  background: var(--app-bg) !important;
  border-radius: 1rem !important;
}

/* ======================================================================
 * 確認服務請求（/payment-confirmation）
 * ====================================================================== */
html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  background: var(--app-bg) !important;
  padding-top: 0 !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-container {
  padding: 1rem !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-header {
  margin-bottom: 1rem !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-header button {
  margin-right: 0.75rem !important;
  padding: 0.5rem !important;
  background: #fff !important;
  color: var(--app-navy) !important;
  border-radius: 9999px !important;
  box-shadow: 0 2px 8px rgba(29, 53, 87, 0.08) !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-header h1 {
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-grid {
  gap: 1rem !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-grid > .space-y-6 > :not([hidden]) ~ :not([hidden]) {
  margin-top: 1rem !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-grid .bg-white.shadow-md {
  border-radius: 1.25rem !important;
  box-shadow: 0 8px 24px rgba(29, 53, 87, 0.08) !important;
  padding: 1.25rem !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-grid .bg-white.shadow-md h2 {
  color: var(--app-navy) !important;
  font-size: 1rem !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-grid .bg-white.shadow-md h2 svg {
  color: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-grid label {
  font-size: 0.75rem !important;
  margin-bottom: 0.125rem;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-grid .bg-white.shadow-md .text-blue-600 {
  color: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-note {
  background: var(--app-tint) !important;
  border: none !important;
  border-radius: 1rem !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-note h3 {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-note :is(p, svg) {
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-cta button.bg-blue-600 {
  background: var(--app-coral) !important;
  border-radius: 1rem !important;
  padding-top: 0.875rem !important;
  padding-bottom: 0.875rem !important;
  box-shadow: 0 6px 16px rgba(230, 57, 70, 0.25) !important;
}

html .fixnow-app-page.fixnow-page-payconfirm.fixnow-pay-app-style .fixnow-payconfirm-cta button.bg-blue-600:hover {
  background: #d62f3c !important;
}
/**
 * 維修紀錄（/service-history）的 App 風格：
 * 原生 App 與手機寬度（< 768px）的網頁會套用（最外層加上 fixnow-history-app-style）；電腦版不受影響。
 * 只調整外框、篩選與清單卡片的樣式，付款卡片內部維持原樣。
 */

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
  padding-top: 0 !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-container {
  padding: 1rem !important;
}

/* ===== 標題與搜尋 ===== */
html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-header {
  margin-bottom: 1rem !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-header h1 {
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
  margin-bottom: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-header input {
  min-height: 2.875rem;
  background: #fff !important;
  border-color: transparent !important;
  border-radius: 1rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-header input:focus {
  box-shadow: 0 0 0 2px rgba(39, 76, 119, 0.25), var(--app-shadow-card) !important;
  --tw-ring-color: transparent !important;
}

/* ===== 篩選與排序：收進白色卡片，每組標題一行、選項換行排列 ===== */
html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-filters {
  margin-bottom: 1rem !important;
  padding: 1rem;
  background: #fff;
  border-radius: 1.25rem;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-filters > :not([hidden]) ~ :not([hidden]) {
  margin-top: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-filters > div.flex {
  flex-wrap: wrap;
  gap: 0.5rem;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-filters > div.flex > * {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-filters > div.flex > svg {
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-filters > div.flex > span.text-sm {
  flex: 0 0 calc(100% - 16px - 0.5rem);
  color: var(--app-navy) !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-filters button.rounded-full {
  padding: 0.375rem 0.875rem !important;
  font-size: 0.8125rem !important;
  font-weight: 500;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-filters button.rounded-full.bg-gray-200 {
  background: var(--app-bg) !important;
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-filters button.rounded-full:is(.bg-blue-500, .bg-green-500, .bg-purple-500, .bg-yellow-500) {
  background: var(--app-navy) !important;
  color: #fff !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-filters :is(select, input[type='date']) {
  min-height: 2.25rem;
  background-color: var(--app-bg) !important;
  border-color: transparent !important;
  border-radius: 0.75rem !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-filters select {
  flex: 1 1 auto;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-filters input[type='date'] {
  flex: 1 1 0;
  min-width: 0;
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
  font-size: 0.8125rem !important;
}

/* ===== 清單：每筆紀錄獨立成卡片 ===== */
html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-list {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: visible !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-list > .divide-y > * {
  border-top-width: 0 !important;
  border-bottom-width: 0 !important;
  border-radius: 1.25rem;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-list > .divide-y > * + * {
  margin-top: 0.75rem;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-list > .divide-y > div.border-b button {
  border-radius: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-list > .divide-y > div.border-b button.bg-blue-600:not(:disabled) {
  background: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-item {
  background-color: #fff !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-item h3.font-medium {
  color: var(--app-navy) !important;
  font-weight: 600 !important;
  line-height: 1.4;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-item > .flex > .flex-1 > button {
  border-radius: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-item > .flex > .flex-1 > button.bg-purple-600 {
  background: var(--app-navy) !important;
}

/* 金額與狀態：手機改成靠左的淺色資訊區塊 */
html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-meta {
  align-items: stretch !important;
  margin-top: 0.75rem;
  padding: 0.75rem;
  background: var(--app-bg);
  border-radius: 1rem;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-meta .items-end {
  align-items: flex-start !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-meta .text-right {
  text-align: left !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-meta > .flex-col.mt-1 {
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0.375rem;
  margin-top: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-meta > .flex-col.mt-1 > * {
  margin-top: 0 !important;
}

html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-item .mt-4.rounded-xl {
  border-radius: 1rem !important;
}

/* ===== 空狀態 ===== */
html .fixnow-app-page.fixnow-page-history.fixnow-history-app-style .fixnow-history-empty {
  padding: 2.5rem 1.5rem !important;
  background: #fff;
  border-radius: 1.25rem;
  box-shadow: var(--app-shadow-card);
}
/**
 * 員工工作台（/employee/dashboard/*）與員工案件（/employee/jobs/*）的 App 風格：
 * 原生 App 與手機寬度（< 768px）的網頁會套用（各角色頁面最外層加上 fixnow-emp-app-style）；電腦版不受影響。
 * 四種部門版面結構不同，這裡只統一外框、標題、卡片與主要按鈕，不調整各區塊內部排版。
 */

html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
  padding-top: 0 !important;
}

html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style > div.w-full {
  padding: 1rem !important;
}

/* ===== 標題列 ===== */
html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style > div.w-full > div.flex.flex-col.mb-8 {
  margin-bottom: 1rem !important;
}

html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style > div.w-full > div.flex.flex-col.mb-8 h1 {
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
  line-height: 1.875rem !important;
}

html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style > div.w-full > div.flex.flex-col.mb-8 h1 svg {
  width: 1.5rem !important;
  height: 1.5rem !important;
}

html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style > div.w-full > div.flex.flex-col.mb-8 p {
  font-size: 0.875rem !important;
  line-height: 1.5 !important;
}

html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style > div.w-full > div.flex.flex-col.mb-8 :is(button, a) {
  border-radius: 0.875rem !important;
}

/* ===== 卡片 ===== */
html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style > div.w-full :is(.rounded-xl, .rounded-2xl).bg-white:not(.shadow-2xl) {
  border-radius: 1.25rem !important;
  border-color: var(--app-tint) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style > div.w-full :is(.rounded-xl, .rounded-2xl).bg-white.p-6 {
  padding: 1rem !important;
}

html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style > div.w-full :is(.rounded-xl, .rounded-2xl).bg-white.mb-8 {
  margin-bottom: 1rem !important;
}

html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style > div.w-full .grid:is(.gap-6, .gap-8) {
  gap: 1rem !important;
}

html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style > div.w-full .grid.mb-8 {
  margin-bottom: 1rem !important;
}

/* ===== 按鈕與輸入框 ===== */
html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style button.bg-blue-600:not(:disabled) {
  background-color: var(--app-coral) !important;
  border-radius: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style button.bg-blue-600:not(:disabled):hover {
  background-color: #d62f3c !important;
}

/* 「重新查看引導」浮動按鈕：移到底部導覽列上方 */
html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style button.fixed.bottom-6.right-6 {
  bottom: calc(4rem + 1rem + env(safe-area-inset-bottom, 0px)) !important;
  right: 1rem !important;
  padding: 0.75rem !important;
  background-color: var(--app-navy) !important;
  box-shadow: 0 6px 16px rgba(29, 53, 87, 0.3) !important;
}

html.native-app .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style button.fixed.bottom-6.right-6 {
  bottom: calc(4.25rem + 1rem + env(safe-area-inset-bottom, 0px)) !important;
}

html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style > div.w-full :is(button, a).text-blue-600 {
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-employee.fixnow-emp-app-style > div.w-full :is(input[type='text'], input[type='search'], select) {
  border-radius: 0.75rem !important;
}
/**
 * 更多（/more）的 App 風格：原生 App 與手機寬度（< 768px）的網頁會套用（最外層加上 fixnow-more-app-style）；電腦版不受影響。
 */

html .fixnow-app-page.fixnow-page-more.fixnow-more-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  min-height: 100vh;
  background: var(--app-bg) !important;
  padding-bottom: calc(5rem + env(safe-area-inset-bottom, 0px));
}

html .fixnow-app-page.fixnow-page-more.fixnow-more-app-style .fixnow-more-container {
  padding: 1rem !important;
}

html .fixnow-app-page.fixnow-page-more.fixnow-more-app-style .fixnow-more-container > h1 {
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
  line-height: 1.875rem !important;
}

html .fixnow-app-page.fixnow-page-more.fixnow-more-app-style .fixnow-more-container > h1 + p {
  margin-bottom: 1rem !important;
}

html .fixnow-app-page.fixnow-page-more.fixnow-more-app-style .fixnow-more-list {
  border: none !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-more.fixnow-more-app-style .fixnow-more-list > :not([hidden]) ~ :not([hidden]) {
  border-color: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-more.fixnow-more-app-style .fixnow-more-list > a {
  min-height: 3.5rem;
  padding: 0.625rem 1rem !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-more.fixnow-more-app-style .fixnow-more-list > a:active {
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-more.fixnow-more-app-style .fixnow-more-list > a > svg:first-child {
  box-sizing: content-box;
  padding: 0.5rem;
  border-radius: 0.75rem;
  background: var(--app-tint);
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-more.fixnow-more-app-style .fixnow-more-list > a > span {
  font-weight: 600 !important;
}

html .fixnow-app-page.fixnow-page-more.fixnow-more-app-style .fixnow-more-auth > a {
  min-height: 3.25rem;
  border-radius: 1rem !important;
  font-weight: 700 !important;
}

html .fixnow-app-page.fixnow-page-more.fixnow-more-app-style .fixnow-more-auth > a.bg-white {
  border-color: transparent !important;
  color: var(--app-navy) !important;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-more.fixnow-more-app-style .fixnow-more-auth > a.bg-blue-600 {
  background: var(--app-coral) !important;
  box-shadow: 0 6px 16px rgba(230, 57, 70, 0.25);
}

html .fixnow-app-page.fixnow-page-more.fixnow-more-app-style .fixnow-more-container > a.text-blue-600 {
  color: var(--app-navy-light) !important;
}
/**
 * 服務追蹤（/tracking/:orderId）的 App 風格：與 native-app.css 的原生版規則相同，
 * 讓手機寬度（< 768px）的網頁也套用（最外層加上 fixnow-tracking-app-style）；電腦版不受影響。
 */

html .fixnow-page-tracking.fixnow-tracking-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-coral-hover: #c1121f;
  --app-bg: #f4f6fb;
  --app-radius-xl: 1.5rem;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
  height: auto !important;
  min-height: 100vh;
}

html:not(.native-app) .fixnow-page-tracking.fixnow-tracking-app-style {
  padding-bottom: calc(4rem + env(safe-area-inset-bottom, 0px));
}

html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-top-bar {
  background: linear-gradient(135deg, var(--app-navy) 0%, var(--app-navy-light) 100%) !important;
  box-shadow: 0 4px 16px rgba(29, 53, 87, 0.25) !important;
  padding-top: calc(0.75rem + env(safe-area-inset-top, 0px)) !important;
}

html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-top-bar h2,
html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-top-bar button {
  color: #fff !important;
}

html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-top-bar button:hover {
  background-color: rgba(255, 255, 255, 0.12) !important;
}

html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-top-bar .text-gray-600 {
  color: rgba(255, 255, 255, 0.85) !important;
}

html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-top-bar .bg-blue-50 {
  background: rgba(255, 255, 255, 0.15) !important;
  backdrop-filter: blur(8px);
}

html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-top-bar .bg-blue-50 .text-blue-600 { color: #bfd4ff !important; }
html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-top-bar .bg-blue-50 .text-green-600 { color: #86efac !important; }
html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-top-bar .bg-blue-50 .text-orange-600 { color: #fdba74 !important; }

html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-top-bar .bg-green-500 {
  background-color: var(--app-coral) !important;
}

html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-top-bar .hover\:bg-green-600:hover {
  background-color: var(--app-coral-hover) !important;
}

/* 上方地圖、下方卡片依序排列，整頁隨視窗捲動 */
html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-map-wrap {
  flex: none !important;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding-bottom: 1rem;
}

html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-map-wrap > :first-child {
  height: 42vh !important;
  min-height: 260px;
  flex-shrink: 0;
  order: 0;
  border-radius: 0 0 var(--app-radius-xl) var(--app-radius-xl);
  overflow: hidden;
}

html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-panel {
  position: static !important;
  inset: auto !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 0.75rem;
  border: none !important;
  border-radius: var(--app-radius-xl) !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-panel--craftsman {
  display: block !important;
  order: 1;
  margin-top: -2.5rem;
  position: relative !important;
  z-index: 5;
}

html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-panel--status { order: 2; }
html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-panel--progress { order: 3; padding: 1rem !important; }
html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-panel--payment { order: 4; }
html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-panel--verify { order: 5; }
html .fixnow-page-tracking.fixnow-tracking-app-style .fixnow-tracking-panel--log { order: 6; }
/**
 * 服務完成確認（/service-completion/:requestId）的 App 風格：
 * 原生 App 與手機寬度（< 768px）的網頁會套用（最外層加上 fixnow-completion-app-style）；電腦版不受影響。
 * 原本一整張大卡片拆成多張區塊卡片，內容與按鈕行為不變。
 */

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
  padding-top: 0 !important;
  padding-bottom: calc(5rem + env(safe-area-inset-bottom, 0px));
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-container {
  padding: 1rem !important;
}

/* ===== 頁首 ===== */
html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-header {
  margin-bottom: 1rem !important;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-header > button {
  margin-bottom: 0.75rem !important;
  color: var(--app-navy-light) !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-header h1 {
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
  line-height: 1.875rem !important;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-header p {
  font-size: 0.875rem !important;
  line-height: 1.5 !important;
}

/* ===== 步驟 ===== */
html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-steps {
  margin-bottom: 0.75rem !important;
  padding: 0.875rem 0.5rem;
  background: #fff;
  border-radius: 1.25rem;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-steps .border-blue-600.bg-blue-600 {
  background: var(--app-navy) !important;
  border-color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-steps .bg-blue-100 {
  background: var(--app-tint) !important;
  border-color: var(--app-tint) !important;
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-steps .text-blue-700 {
  color: var(--app-navy) !important;
}

/* ===== 區塊卡片 ===== */
html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-container > div.mb-6.rounded-lg {
  margin-bottom: 0.75rem !important;
  border-radius: 1rem !important;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-card {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: visible !important;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-card > div:not(.fixnow-completion-actions) {
  padding: 1rem !important;
  background-color: #fff;
  border-bottom-width: 0 !important;
  border-radius: 1.25rem;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-card > div + div {
  margin-top: 0.75rem;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-card > div.bg-blue-50 {
  background-color: var(--app-tint) !important;
  box-shadow: none;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-card h2 {
  color: var(--app-navy) !important;
  font-size: 1.0625rem !important;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-card h3.text-lg {
  color: var(--app-navy) !important;
  font-size: 1rem !important;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-card .flex.justify-between {
  gap: 0.75rem;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-card .flex.justify-between > span:first-child {
  flex-shrink: 0;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-card .flex.justify-between > span:last-child {
  text-align: right;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-card :is(input, textarea, select) {
  border-radius: 0.75rem !important;
}

/* ===== 送出列 ===== */
html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-actions {
  gap: 0.75rem;
  margin-top: 0.75rem;
  padding: 0 !important;
  background: transparent !important;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-actions > button {
  flex: 1 1 0;
  justify-content: center;
  min-height: 3rem;
  margin-left: 0 !important;
  padding-left: 0.75rem !important;
  padding-right: 0.75rem !important;
  border-radius: 1rem !important;
  font-weight: 700;
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-actions > button:first-child {
  flex: 0 0 auto;
  border-color: transparent !important;
  color: var(--app-navy) !important;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-completion.fixnow-completion-app-style .fixnow-completion-actions > button.bg-blue-600 {
  background: var(--app-coral) !important;
  box-shadow: 0 6px 16px rgba(230, 57, 70, 0.25);
}
/**
 * 設置工匠資料（/craftsman/setup）的 App 風格：
 * 原生 App 與手機寬度（< 768px）的網頁會套用（最外層加上 fixnow-setup-app-style）；電腦版不受影響。
 */

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
  padding: 1rem 0 calc(5rem + env(safe-area-inset-bottom, 0px)) !important;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-card {
  background: transparent !important;
  box-shadow: none !important;
}

/* ===== 標題：深藍卡片 ===== */
html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-header {
  padding: 1.25rem 1rem !important;
  border: none !important;
  border-radius: 1.25rem;
  background: linear-gradient(135deg, var(--app-navy) 0%, var(--app-navy-light) 100%);
  box-shadow: 0 8px 24px rgba(29, 53, 87, 0.2);
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-header svg {
  color: #fff !important;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-header h1 {
  color: #fff !important;
  font-size: 1.25rem !important;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-header p {
  color: rgba(255, 255, 255, 0.8) !important;
  font-size: 0.8125rem;
}

/* ===== 表單：每個區塊一張卡片 ===== */
html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-form {
  padding: 0.875rem 0 0 !important;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-form > :not([hidden]) ~ :not([hidden]) {
  margin-top: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-form > div.space-y-6 {
  padding: 1rem;
  background: #fff;
  border-radius: 1.25rem;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-form > div.space-y-6 > :not([hidden]) ~ :not([hidden]) {
  margin-top: 1rem !important;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-form h3 {
  color: var(--app-navy) !important;
  font-size: 1rem !important;
  border-bottom-color: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-form .grid.gap-6 {
  gap: 1rem !important;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-form :is(input[type='text'], input[type='tel'], input[type='number'], textarea) {
  min-height: 2.75rem;
  background: var(--app-bg) !important;
  border-color: transparent !important;
  border-radius: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-form :is(input[type='text'], input[type='tel'], input[type='number'], textarea):focus {
  background: #fff !important;
  box-shadow: 0 0 0 2px rgba(39, 76, 119, 0.25) !important;
  --tw-ring-color: transparent !important;
}

/* 專業技能、服務區域：勾選框改成選項卡片 */
html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-form .grid.gap-4 {
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-form label.cursor-pointer {
  padding: 0.625rem 0.75rem;
  background: var(--app-bg);
  border: 1.5px solid transparent;
  border-radius: 0.875rem;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-form label.cursor-pointer > * + * {
  margin-left: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-form label.cursor-pointer:has(input:checked) {
  background: var(--app-tint);
  border-color: var(--app-navy-light);
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-form label.cursor-pointer:has(input:checked) span {
  color: var(--app-navy) !important;
  font-weight: 600;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-form label.cursor-pointer input {
  accent-color: var(--app-navy);
}

/* ===== 按鈕 ===== */
html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-actions {
  gap: 0.75rem;
  padding-top: 0.25rem !important;
  border-top: none !important;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-actions > button {
  flex: 1 1 0;
  justify-content: center;
  min-height: 3rem;
  margin-left: 0 !important;
  border-radius: 1rem !important;
  font-weight: 700;
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-actions > button[type='button'] {
  background: #fff;
  border-color: transparent !important;
  color: var(--app-navy) !important;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-setup.fixnow-setup-app-style .fixnow-setup-actions > button[type='submit'] {
  background: var(--app-coral) !important;
  box-shadow: 0 6px 16px rgba(230, 57, 70, 0.25);
}
/**
 * 所有工匠（/craftsmen）的 App 風格：原生 App 與手機寬度（< 768px）的網頁會套用（最外層加上 fixnow-craftsmen-app-style）；電腦版不受影響。
 */

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
  padding-bottom: calc(5rem + env(safe-area-inset-bottom, 0px));
}

/* ===== 頁首 ===== */
html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-header {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-header > .container {
  padding: 1rem 1rem 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-header h1 {
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
  line-height: 1.875rem !important;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-header h1 + p {
  margin-top: 0.125rem !important;
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-header .text-right {
  min-width: 3.75rem;
  padding: 0.375rem 0.75rem;
  border-radius: 1rem;
  background: #fff;
  box-shadow: var(--app-shadow-card);
  text-align: center;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-header .text-2xl {
  color: var(--app-coral) !important;
  font-size: 1.25rem !important;
  line-height: 1.5rem !important;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-header .text-2xl + div {
  font-size: 0.75rem !important;
}

/* ===== 搜尋與篩選 ===== */
html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-filters {
  margin: 0 1rem;
  border: none !important;
  border-radius: 1.25rem;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-filters > .container {
  padding: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-filters .flex-col {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-filters .flex-col > .flex-1 {
  grid-column: 1 / -1;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-filters :is(input, select) {
  min-height: 2.75rem;
  border: 1px solid transparent !important;
  border-radius: 0.875rem !important;
  background-color: var(--app-bg) !important;
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-filters :is(input, select):focus {
  border-color: var(--app-navy-light) !important;
  box-shadow: none !important;
}

/* ===== 結果 ===== */
html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-results {
  padding: 1rem !important;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-results > .mb-6 {
  margin-bottom: 0.75rem !important;
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-results > .mb-6 .text-blue-600 {
  color: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-grid {
  gap: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-card {
  padding: 1rem !important;
  border: none !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-card > .mb-4 {
  margin-bottom: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-card h3 {
  color: var(--app-navy) !important;
  font-size: 1rem !important;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-card > .mb-3 {
  padding: 0.5rem 0.75rem;
  border-radius: 0.75rem;
  background: var(--app-bg);
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-card span.text-lg.text-blue-600 {
  color: var(--app-navy) !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-card button.bg-blue-600 {
  padding: 0.5rem 1rem !important;
  border-radius: 0.875rem !important;
  background: var(--app-coral) !important;
  font-size: 0.875rem;
  font-weight: 700;
  box-shadow: 0 6px 16px rgba(230, 57, 70, 0.25);
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-card .bg-blue-100 {
  background: var(--app-tint) !important;
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-results > .text-center {
  padding: 2rem 1rem !important;
  border-radius: 1.25rem;
  background: #fff;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-craftsmen.fixnow-craftsmen-app-style .fixnow-craftsmen-results > .text-center button.bg-blue-600 {
  border-radius: 0.875rem !important;
  background: var(--app-coral) !important;
}
/**
 * 公司簡介（/about）、聯絡我們（/contact）、部落格（/blog）的 App 風格：
 * 原生 App 與手機寬度（< 768px）的網頁會套用（最外層加上 fixnow-info-app-style）；電腦版不受影響。
 */

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
  padding-top: 0 !important;
  padding-bottom: calc(5rem + env(safe-area-inset-bottom, 0px));
}

/* ===== 頂部橫幅 ===== */
html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-info-hero {
  height: 12rem !important;
  margin: 1rem;
  overflow: hidden;
  border-radius: 1.5rem;
  box-shadow: 0 10px 28px rgba(29, 53, 87, 0.22);
}

html .fixnow-app-page.fixnow-page-info.fixnow-page-about.fixnow-info-app-style .fixnow-info-hero {
  height: 14rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-info-hero .bg-blue-900 {
  background: linear-gradient(135deg, rgba(29, 53, 87, 0.94) 0%, rgba(39, 76, 119, 0.82) 100%) !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-info-hero > .container {
  padding: 0 1.25rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-info-hero h1 {
  margin-bottom: 0.5rem !important;
  font-size: 1.625rem !important;
  line-height: 2.125rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-info-hero p {
  font-size: 0.9375rem !important;
  line-height: 1.5 !important;
}

/* ===== 公司簡介：三張特色卡 ===== */
html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-mission {
  padding: 0.5rem 0 1rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style :is(.fixnow-about-mission, .fixnow-about-story, .fixnow-info-body) > .container {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-mission .max-w-3xl {
  margin-bottom: 1rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style :is(.fixnow-about-mission, .fixnow-about-story) h2 {
  margin-bottom: 0.5rem !important;
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
  line-height: 1.875rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-mission .max-w-3xl p {
  font-size: 0.9375rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-mission .grid {
  gap: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-mission .grid > div {
  display: grid;
  grid-template-columns: auto 1fr;
  -moz-column-gap: 0.875rem;
       column-gap: 0.875rem;
  align-items: start;
  padding: 1rem !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-mission .grid > div > .bg-blue-100 {
  grid-row: span 2;
  margin-bottom: 0 !important;
  border-radius: 0.875rem !important;
  background: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-mission .grid > div > .bg-blue-100 svg {
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-mission .grid h3 {
  margin-bottom: 0.25rem !important;
  color: var(--app-navy) !important;
  font-size: 1.0625rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-mission .grid p {
  font-size: 0.875rem;
}

/* ===== 公司簡介：我們的故事 ===== */
html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-story {
  padding: 0 0 1rem !important;
  background: transparent !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-story .grid {
  gap: 1rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-story .grid > div:first-child {
  padding: 1.25rem 1rem;
  border-radius: 1.25rem;
  background: #fff;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-story h3.text-lg {
  color: var(--app-navy) !important;
  font-size: 1rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-story .grid > div:first-child p {
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-story .mt-6 {
  margin-top: 1rem !important;
  padding: 1rem !important;
  border: none !important;
  border-radius: 1rem !important;
  background: var(--app-bg) !important;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-story .mt-6 ul {
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-story .mt-6 svg.text-blue-600,
html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-story .mt-6 a.text-blue-600 {
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-story .grid > div:last-child {
  height: 12rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-story .grid > div:last-child img {
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

/* ===== 公司簡介：統計數字 ===== */
html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-stats {
  margin: 0 1rem;
  padding: 1.25rem 0 !important;
  border-radius: 1.5rem;
  background: linear-gradient(135deg, var(--app-navy) 0%, var(--app-navy-light) 100%) !important;
  box-shadow: 0 10px 28px rgba(29, 53, 87, 0.22);
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-stats > .container {
  padding: 0 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-stats .grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-stats .text-4xl {
  margin-bottom: 0.25rem !important;
  font-size: 1.5rem !important;
  line-height: 2rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-about-stats .text-blue-100 {
  font-size: 0.75rem;
}

/* ===== 聯絡我們：表單卡片 ===== */
html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-info-body {
  padding: 0 0 1rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-contact-card {
  padding: 1.25rem 1rem !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-contact-card h2 {
  color: var(--app-navy) !important;
  font-size: 1.25rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-contact-card p.mb-6 {
  margin-bottom: 1rem !important;
  padding: 0.75rem;
  border-radius: 0.875rem;
  background: var(--app-tint);
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-contact-card form > :not([hidden]) ~ :not([hidden]) {
  margin-top: 1rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-contact-card label {
  margin-bottom: 0.375rem !important;
  color: var(--app-navy) !important;
  font-weight: 600 !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-contact-card :is(input, textarea) {
  min-height: 2.75rem;
  border: 1px solid transparent !important;
  border-radius: 0.875rem !important;
  background-color: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-contact-card :is(input, textarea):focus {
  border-color: var(--app-navy-light) !important;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-contact-card button[type='submit'] {
  min-height: 3rem;
  border-radius: 1rem !important;
  background: var(--app-coral) !important;
  font-weight: 700;
  box-shadow: 0 6px 16px rgba(230, 57, 70, 0.25);
}

/* ===== 部落格：追蹤管道 ===== */
html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-blog-social {
  margin: 0 1rem 1rem;
  padding: 1.25rem 0 !important;
  border: none !important;
  border-radius: 1.25rem;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-blog-social > .container {
  padding: 0 1rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-blog-social p {
  margin-bottom: 1rem !important;
  font-size: 0.875rem;
  text-align: left;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-blog-social .flex-wrap {
  gap: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-blog-social .flex-wrap > a {
  flex: 1 1 100%;
  justify-content: center;
  min-height: 2.75rem;
  border-radius: 0.875rem !important;
  font-weight: 700 !important;
}

html .fixnow-app-page.fixnow-page-info.fixnow-info-app-style .fixnow-blog-social .flex-wrap > a.border {
  border-color: transparent !important;
  background: var(--app-bg);
  color: var(--app-navy) !important;
}
/**
 * 市場數據分析（/market-analytics）的 App 風格：原生 App 與手機寬度（< 768px）的網頁會套用（最外層加上 fixnow-analytics-app-style）；電腦版不受影響。
 */

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  padding: 1rem 1rem calc(5rem + env(safe-area-inset-bottom, 0px)) !important;
  background: var(--app-bg) !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-container > :not([hidden]) ~ :not([hidden]) {
  margin-top: 0.75rem !important;
}

/* ===== 頁首 ===== */
html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-header {
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 0.75rem;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-header h1 {
  gap: 0.5rem !important;
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
  line-height: 1.875rem !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-header h1 svg {
  width: 1.5rem !important;
  height: 1.5rem !important;
  color: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-header h1 + p {
  margin-top: 0.125rem !important;
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-header select {
  min-height: 2.5rem;
  padding: 0.375rem 2rem 0.375rem 0.875rem !important;
  border: none !important;
  border-radius: 999px !important;
  background-color: #fff !important;
  color: var(--app-navy);
  font-size: 0.875rem;
  font-weight: 600;
  box-shadow: var(--app-shadow-card);
}

/* ===== 關鍵指標：兩欄 ===== */
html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-metrics {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-metrics > div {
  min-width: 0;
  padding: 0.875rem !important;
  border: none !important;
  border-radius: 1.25rem !important;
  background-color: #fff !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-metrics > div > .mb-4 {
  margin-bottom: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-metrics > div > .mb-4 > div:first-child {
  padding: 0.5rem !important;
  border-radius: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-metrics > div > .mb-4 svg {
  width: 1.25rem !important;
  height: 1.25rem !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-metrics > div > .mb-4 > div:last-child {
  font-size: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-metrics .text-2xl {
  overflow: hidden;
  color: var(--app-navy) !important;
  font-size: 1.125rem !important;
  line-height: 1.5rem !important;
  text-overflow: ellipsis;
  white-space: nowrap;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-metrics .text-2xl + div {
  font-size: 0.75rem !important;
}

/* ===== 區塊卡片 ===== */
html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-container > div.bg-white.rounded-xl {
  padding: 1rem !important;
  border: none !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-container > div.bg-white.rounded-xl > h2 {
  margin-bottom: 0.75rem !important;
  color: var(--app-navy) !important;
  font-size: 1.0625rem !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-container > div.bg-white.rounded-xl > h2 svg {
  width: 1.25rem !important;
  height: 1.25rem !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-container > div.bg-white.rounded-xl :is(.grid, .space-y-6) {
  gap: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-container > div.bg-white.rounded-xl .space-y-6 > :not([hidden]) ~ :not([hidden]) {
  margin-top: 0.625rem !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-container > div.bg-white.rounded-xl div.border.rounded-lg {
  padding: 0.875rem !important;
  border: none !important;
  border-radius: 1rem !important;
  background: var(--app-bg);
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-container > div.bg-white.rounded-xl div.border.rounded-lg h3 {
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-container > div.bg-white.rounded-xl .text-purple-600 {
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-container > div.bg-white.rounded-xl .bg-purple-600 {
  background-color: var(--app-coral) !important;
}

html .fixnow-app-page.fixnow-page-analytics.fixnow-analytics-app-style .fixnow-analytics-container > div.bg-white.rounded-xl .grid-cols-4 .font-semibold {
  font-size: 0.75rem;
}
/**
 * 法律文件列表（/legal）與各份文件頁（MarkdownViewer：/privacy、/terms、/user-agreement、/refund-policy、
 * /data-protection、/business-registration、/tax-handling）的 App 風格：
 * 原生 App 與手機寬度（< 768px）的網頁會套用（最外層加上 fixnow-legal-app-style / fixnow-legaldoc-app-style）；電腦版不受影響。
 */

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style,
html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-bg: #f4f6fb;
  --app-tint: #eef2f8;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  background: var(--app-bg) !important;
  padding-bottom: calc(5rem + env(safe-area-inset-bottom, 0px));
}

/* ===== 列表頁 ===== */
html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-container {
  padding: 1rem !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-header {
  margin-bottom: 1.25rem !important;
  text-align: left !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-header h1 {
  margin-bottom: 0.25rem !important;
  color: var(--app-navy) !important;
  font-size: 1.375rem !important;
  line-height: 1.875rem !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-header p {
  font-size: 0.875rem !important;
  line-height: 1.5 !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-group {
  margin-bottom: 1.25rem !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-group > h2 {
  margin-bottom: 0.5rem !important;
  padding: 0 0.25rem !important;
  border: none !important;
  color: #64748b !important;
  font-size: 0.8125rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-grid {
  gap: 0 !important;
  overflow: hidden;
  border-radius: 1.25rem;
  background: #fff;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-grid > a {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  -moz-column-gap: 0.75rem;
       column-gap: 0.75rem;
  align-items: center;
  padding: 0.875rem 1rem !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-grid > a + a {
  border-top: 1px solid var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-grid > a:active {
  background: var(--app-bg);
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-grid > a > div:first-child {
  display: contents;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-grid > a > div:first-child > div {
  grid-column: 1;
  grid-row: 1 / span 3;
  padding: 0.5rem !important;
  border-radius: 0.75rem !important;
  background: var(--app-tint) !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-grid > a > div:first-child > div svg {
  width: 1.25rem;
  height: 1.25rem;
  color: var(--app-navy-light) !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-grid > a > div:first-child > svg {
  grid-column: 3;
  grid-row: 1 / span 3;
  width: 1.125rem;
  height: 1.125rem;
  color: #94a3b8 !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-grid > a > h3 {
  grid-column: 2;
  grid-row: 1;
  margin-bottom: 0.125rem !important;
  color: var(--app-navy) !important;
  font-size: 1rem !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-grid > a > p {
  grid-column: 2;
  grid-row: 2;
  margin-bottom: 0.125rem !important;
  font-size: 0.8125rem !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-grid > a > div:last-child {
  grid-column: 2;
  grid-row: 3;
  font-size: 0.6875rem !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-help {
  margin-top: 1.25rem !important;
  padding: 1.25rem 1rem !important;
  border: none !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-help > h2 {
  margin-bottom: 0.375rem !important;
  color: var(--app-navy) !important;
  font-size: 1.125rem !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-help > p.mb-6 {
  margin-bottom: 0.875rem !important;
  font-size: 0.875rem;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-help > .grid {
  gap: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-help > .grid > div {
  padding: 0.625rem 0.75rem;
  border-radius: 0.875rem;
  background: var(--app-bg);
}

html .fixnow-app-page.fixnow-page-legal.fixnow-legal-app-style .fixnow-legal-help > .grid h3 {
  margin-bottom: 0.125rem !important;
  color: var(--app-navy) !important;
  font-size: 0.875rem;
}

/* ===== 文件頁 ===== */
html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-container {
  padding: 1rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-topbar {
  margin-bottom: 0.75rem !important;
  gap: 0.5rem;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-topbar > :is(a, button) {
  min-height: 2.5rem;
  padding: 0 0.875rem;
  border-radius: 999px;
  background: #fff;
  color: var(--app-navy) !important;
  font-size: 0.875rem;
  font-weight: 600;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-topbar > :is(a, button) svg {
  width: 1.125rem;
  height: 1.125rem;
  margin-right: 0.375rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-toc {
  margin-bottom: 0.75rem !important;
  padding: 1rem !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-toc h3 {
  color: var(--app-navy) !important;
  font-size: 1rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-toc nav > :not([hidden]) ~ :not([hidden]) {
  margin-top: 0.125rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-toc nav button {
  border-radius: 0.75rem !important;
  font-size: 0.875rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-toc nav button.bg-blue-50 {
  background: var(--app-tint) !important;
  color: var(--app-navy) !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-header {
  margin-bottom: 0.75rem !important;
  padding: 1.25rem 1rem !important;
  border-radius: 1.25rem !important;
  background: linear-gradient(135deg, var(--app-navy) 0%, var(--app-navy-light) 100%) !important;
  box-shadow: 0 10px 28px rgba(29, 53, 87, 0.22) !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-header > div:first-child {
  margin-bottom: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-header svg {
  color: rgba(255, 255, 255, 0.85) !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-header > div:first-child svg {
  width: 1.5rem;
  height: 1.5rem;
  margin-right: 0.5rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-header h1 {
  color: #fff !important;
  font-size: 1.375rem !important;
  line-height: 1.875rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-header > div:last-child {
  color: rgba(255, 255, 255, 0.8) !important;
  font-size: 0.8125rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-content {
  padding: 1.25rem 1rem !important;
  border-radius: 1.25rem !important;
  box-shadow: var(--app-shadow-card) !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-content .prose {
  font-size: 0.9375rem !important;
  line-height: 1.75 !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-content .prose h1 {
  margin: 0 0 1rem !important;
  color: var(--app-navy) !important;
  font-size: 1.25rem !important;
  line-height: 1.75rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-content .prose h2 {
  margin: 1.5rem 0 0.75rem !important;
  padding-bottom: 0.375rem !important;
  border-color: var(--app-tint) !important;
  color: var(--app-navy) !important;
  font-size: 1.125rem !important;
  line-height: 1.625rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-content .prose h3 {
  margin: 1.25rem 0 0.5rem !important;
  color: var(--app-navy-light) !important;
  font-size: 1rem !important;
  line-height: 1.5rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-content .prose > :first-child {
  margin-top: 0 !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-content .prose p {
  margin-bottom: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-content .prose :is(ul, ol) {
  margin: 0 0 0.75rem !important;
  padding-left: 0 !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-content .prose :is(ul, ol) > :not([hidden]) ~ :not([hidden]) {
  margin-top: 0.25rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-content .prose li {
  margin: 0 0 0 1.25rem !important;
  padding-left: 0 !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-content .prose a {
  color: var(--app-navy-light) !important;
  word-break: break-all;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-actions {
  margin-top: 1rem !important;
  gap: 0.75rem !important;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-actions > :is(a, button) {
  flex: 1 1 0;
  justify-content: center;
  min-height: 3rem;
  padding: 0 0.75rem !important;
  border-radius: 1rem !important;
  font-size: 0.875rem;
  font-weight: 700;
  text-align: center;
  display: inline-flex;
  align-items: center;
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-actions > button.bg-gray-600 {
  background: #fff !important;
  color: var(--app-navy) !important;
  box-shadow: var(--app-shadow-card);
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-actions > a.bg-blue-600 {
  background: var(--app-coral) !important;
  box-shadow: 0 6px 16px rgba(230, 57, 70, 0.25);
}

html .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-totop {
  right: 1rem !important;
  bottom: calc(4rem + 1rem + env(safe-area-inset-bottom, 0px)) !important;
  background: var(--app-navy) !important;
  box-shadow: 0 8px 20px rgba(29, 53, 87, 0.3) !important;
}

html.native-app .fixnow-app-page.fixnow-page-legaldoc.fixnow-legaldoc-app-style .fixnow-legaldoc-totop {
  bottom: calc(4.25rem + 1rem + env(safe-area-inset-bottom, 0px)) !important;
}
/**
 * 首頁的 App 風格：在原生 App 與手機寬度（< 768px）的網頁都會套用
 * （由 HomePage 在頁面最外層加上 fixnow-home-app-style）；電腦版不受影響。
 * 版面規則深淺色共用；顏色分成淺色（html:not(.dark)）與深色（html.dark）兩組。
 */

/* ===== 版面（深淺色共用） ===== */
html .fixnow-page-home.fixnow-home-app-style {
  --app-navy: #1d3557;
  --app-navy-light: #274c77;
  --app-coral: #e63946;
  --app-coral-hover: #c1121f;
  --app-bg: #f4f6fb;
  --app-radius-lg: 1.25rem;
  --app-radius-xl: 1.5rem;
  --app-shadow-card: 0 8px 24px rgba(29, 53, 87, 0.08);
  position: relative;
  padding-bottom: calc(4.5rem + env(safe-area-inset-bottom, 0px)) !important;
}

html .fixnow-page-home.fixnow-home-app-style .fixnow-native-recommended-list > button + button {
  margin-top: 0.625rem;
}

/* 主題切換鈕：跟著頁面捲動，不被頂欄蓋住 */
html .fixnow-page-home.fixnow-home-app-style > .fixed.top-4.right-4 {
  position: absolute;
  top: 0.75rem;
  right: 1rem;
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  gap: 0.5rem;
}

html .fixnow-page-home.fixnow-home-app-style > .fixed.top-4.right-4 > * + * {
  margin-top: 0 !important;
}

html .fixnow-page-home.fixnow-home-app-style > .fixed.top-4.right-4 > button {
  height: 2.25rem;
  width: 2.25rem;
  border-radius: 9999px;
}

html .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero {
  padding-top: 3.75rem !important;
  padding-bottom: 0.25rem !important;
}

html .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero > .absolute.inset-0 {
  display: none;
}

html .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero .text-center.mb-10 {
  margin-bottom: 0;
}

html .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero .max-w-2xl input,
html .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero .max-w-2xl button[type='button'] {
  border-radius: 9999px !important;
}

html .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero .max-w-2xl > div {
  border-radius: var(--app-radius-xl) !important;
}

/* 對照設計圖：App 首頁不放地圖、服務流程與成功案例（地圖在搜尋頁） */
html .fixnow-page-home.fixnow-home-app-style .fixnow-home-map,
html .fixnow-page-home.fixnow-home-app-style .fixnow-home-process,
html .fixnow-page-home.fixnow-home-app-style .fixnow-home-testimonials {
  display: none !important;
}

html .fixnow-page-home.fixnow-home-app-style section .rounded-xl,
html .fixnow-page-home.fixnow-home-app-style section .rounded-2xl {
  border-radius: var(--app-radius-lg);
}

html .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero form .from-blue-600,
html .fixnow-page-home.fixnow-home-app-style .bg-blue-600,
html .fixnow-page-home.fixnow-home-app-style button.bg-blue-600 {
  background: var(--app-coral) !important;
}

html .fixnow-page-home.fixnow-home-app-style .hover\:bg-blue-700:hover {
  background-color: var(--app-coral-hover) !important;
}

/* ===== 淺色 ===== */
html:not(.dark) .fixnow-page-home.fixnow-home-app-style {
  background-color: var(--app-bg) !important;
}

html:not(.dark) .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero {
  background: var(--app-bg) !important;
  color: var(--app-navy) !important;
}

html:not(.dark) .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero form > div {
  border: 1px solid rgba(29, 53, 87, 0.06) !important;
}

html:not(.dark) .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero .max-w-2xl > div {
  box-shadow: var(--app-shadow-card);
}

html:not(.dark) .fixnow-page-home.fixnow-home-app-style .text-blue-600 {
  color: var(--app-navy-light) !important;
}

/* ===== 深色：深藍黑底＋深灰卡片，保留珊瑚紅主按鈕 ===== */
html.dark .fixnow-page-home.fixnow-home-app-style {
  --app-bg: #0f172a;
  background-color: var(--app-bg) !important;
}

html.dark .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero {
  background: var(--app-bg) !important;
  color: #e2e8f0 !important;
}

html.dark .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero .max-w-2xl > div {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

html.dark .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero form > div {
  background: #1e293b !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

html.dark .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero .max-w-2xl input {
  background: transparent !important;
  color: #e2e8f0 !important;
}

html.dark .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero .max-w-2xl input::-moz-placeholder {
  color: #64748b;
}

html.dark .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero .max-w-2xl input::placeholder {
  color: #64748b;
}

html.dark .fixnow-page-home.fixnow-home-app-style .fixnow-home-hero .max-w-2xl button.bg-gray-100 {
  background: #334155 !important;
  color: #cbd5e1 !important;
}

html.dark .fixnow-page-home.fixnow-home-app-style .text-blue-600 {
  color: #93c5fd !important;
}
/**
 * 深色模式下的頂欄與底欄：只在手機寬度（含原生 App）生效，電腦版維持原樣。
 */
@media (max-width: 767px) {
  /* 只有首頁換深色，其他頁維持淺色，原生表單元件也跟著用淺色 */
  html.dark {
    color-scheme: light !important;
  }

  html.dark.native-app {
    background-color: #0f172a;
  }

  html.dark .fixnow-home-app-style {
    color-scheme: dark;
  }

  html.dark .fixnow-app-header {
    background: #0f172a !important;
    border-bottom-color: rgba(255, 255, 255, 0.06) !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35) !important;
  }

  html.dark .fixnow-app-header :is(.text-gray-900, .text-gray-700, .text-gray-600) {
    color: #e2e8f0 !important;
  }

  html.dark .fixnow-app-header .border-gray-200 {
    border-color: rgba(255, 255, 255, 0.15) !important;
  }

  html.dark .fixnow-app-header .bg-gray-200 {
    background-color: #334155 !important;
  }

  html.dark .fixnow-app-header a.bg-blue-600 {
    background-color: #e63946 !important;
  }

  html.dark .fixnow-app-bottom-nav {
    background: #0f172a !important;
    border-top-color: rgba(255, 255, 255, 0.06) !important;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.35) !important;
  }

  html.dark .fixnow-app-bottom-nav a.text-blue-600 {
    color: #f8fafc !important;
  }

  html.dark .fixnow-app-bottom-nav a.text-blue-600 span.absolute.bg-blue-600 {
    background-color: #e63946 !important;
  }

  html.dark .fixnow-app-bottom-nav a.text-gray-500 {
    color: #94a3b8 !important;
  }
}
.mapboxgl-map{-webkit-tap-highlight-color:rgb(0 0 0/0);font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px rgba(0,0,0,.1)}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:transparent;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:transparent}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:rgb(0 0 0/5%)}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:transparent;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:hsla(0,0%,100%,.5);margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid transparent;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid transparent;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:rgba(0,0,0,.7);color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}