.sidebar-content[data-v-cba05f94] {
    display: flex;
    flex-direction: column;
    height: 100%;
    background-color: #f5f5f7;
    font-family: var(--apple-font)
}

.sidebar-scrollbar[data-v-cba05f94] {
    flex: 1;
    overflow-y: auto
}

.logo-container[data-v-cba05f94] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px;
    background-color: #f5f5f7;
    border-bottom: 1px solid #e6e6e6
}

.logo-link[data-v-cba05f94] {
    display: flex;
    align-items: center;
    text-decoration: none;
    width: 100%
}

.logo-img[data-v-cba05f94] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    overflow: hidden;
    margin-right: 12px
}

.logo-text[data-v-cba05f94] {
    display: flex;
    flex-direction: column
}

.app-name[data-v-cba05f94] {
    font-size: 16px;
    font-weight: 600;
    color: #1d1d1f
}

.app-desc[data-v-cba05f94] {
    font-size: 12px;
    color: #515154;
    margin-top: 2px
}

.nav-container[data-v-cba05f94] {
    padding: 10px 16px
}

.category-title[data-v-cba05f94] {
    padding: 16px 0 8px;
    font-size: 13px;
    font-weight: 600;
    color: #888;
    text-transform: uppercase;
    letter-spacing: .5px
}

.nav-item[data-v-cba05f94] {
    margin: 4px 0;
    cursor: pointer;
    border-radius: 8px;
    transition: all .2s
}

.nav-item[data-v-cba05f94]:hover {
    background-color: #0000000d
}

.nav-item.active[data-v-cba05f94] {
    background-color: #0071e3
}

.nav-item.active .nav-link[data-v-cba05f94] {
    color: #fff
}

.nav-item.active .nav-icon svg[data-v-cba05f94] {
    stroke: #fff
}

.nav-link[data-v-cba05f94] {
    display: flex;
    align-items: center;
    padding: 10px 12px;
    color: #1d1d1f;
    text-decoration: none;
    font-size: 14px
}

.nav-icon[data-v-cba05f94] {
    margin-right: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #555
}

.nav-all-item[data-v-cba05f94] {
    margin-bottom: 5px
}

.nav-category[data-v-cba05f94] {
    margin-bottom: 16px
}

.sidebar-footer[data-v-cba05f94] {
    padding: 16px;
    border-top: 1px solid #e6e6e6;
    background-color: #f5f5f7
}

.qq-group[data-v-cba05f94] {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    color: #666;
    margin-bottom: 16px
}

.qq-group svg[data-v-cba05f94] {
    margin-right: 6px;
    color: #555
}

.nav-actions[data-v-cba05f94] {
    display: flex;
    justify-content: center;
    gap: 16px
}

.action-button[data-v-cba05f94] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 12px;
    background-color: #e8e8ed;
    border-radius: 20px;
    font-size: 13px;
    color: #333;
    cursor: pointer;
    transition: background-color .2s
}

.action-button svg[data-v-cba05f94] {
    margin-right: 6px
}

.action-button[data-v-cba05f94]:hover {
    background-color: #dedee3
}

.sidebar-close-btn[data-v-cba05f94] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    cursor: pointer;
    color: #666;
    opacity: .7;
    transition: all .2s ease
}

.sidebar-close-btn[data-v-cba05f94]:hover {
    opacity: 1;
    background-color: #0000000d
}

@media (max-width: 768px) {
    .sidebar-close-btn[data-v-cba05f94] {
        display: none
    }
}

.footer[data-v-615f4a3b] {
    background-color: #f5f5f7;
    color: #1d1d1f;
    font-family: SF Pro Display, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Open Sans, Helvetica Neue, sans-serif;
    padding-top: 40px;
    border-top: 1px solid rgba(0, 0, 0, .1)
}

.footer-container[data-v-615f4a3b] {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0 24px
}

.footer-section[data-v-615f4a3b] {
    margin-bottom: 30px
}

.main-section[data-v-615f4a3b] {
    flex: 1;
    min-width: 280px;
    max-width: 380px;
    margin-right: 40px
}

.footer-links-container[data-v-615f4a3b] {
    display: flex;
    flex-wrap: wrap;
    gap: 40px
}

.footer-logo[data-v-615f4a3b] {
    display: flex;
    align-items: center;
    margin-bottom: 16px
}

.footer-logo-image[data-v-615f4a3b] {
    height: 32px;
    width: auto;
    margin-right: 10px
}

.logo-text[data-v-615f4a3b] {
    font-size: 20px;
    font-weight: 600;
    color: #1d1d1f;
    letter-spacing: -.02em
}

.footer-description[data-v-615f4a3b] {
    color: #515154;
    font-size: 14px;
    margin-bottom: 20px;
    line-height: 1.5
}

.footer-copyright[data-v-615f4a3b],
.footer-icp[data-v-615f4a3b] {
    color: #666666;
    font-size: 12px;
    margin: 8px 0;
    line-height: 1.4
}

.footer-icp a[data-v-615f4a3b] {
    color: #666666;
    text-decoration: none;
    transition: color .2s
}

.footer-icp a[data-v-615f4a3b]:hover {
    color: #0071e3;
    text-decoration: underline
}

.footer-title[data-v-615f4a3b] {
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 16px;
    color: #1d1d1f;
    letter-spacing: -.01em
}

.footer-links[data-v-615f4a3b] {
    list-style: none;
    padding: 0;
    margin: 0
}

.footer-links li[data-v-615f4a3b] {
    margin-bottom: 12px
}

.footer-links a[data-v-615f4a3b] {
    color: #515154;
    text-decoration: none;
    font-size: 14px;
    transition: color .2s
}

.footer-links a[data-v-615f4a3b]:hover {
    color: #0071e3;
    text-decoration: none
}

.footer-bottom[data-v-615f4a3b] {
    background: rgba(0, 0, 0, .02);
    padding: 15px 0;
    margin-top: 20px;
    border-top: 1px solid rgba(0, 0, 0, .05)
}

.made-with[data-v-615f4a3b] {
    font-size: 12px;
    color: #666666;
    text-align: center;
    margin: 0
}

.heart[data-v-615f4a3b] {
    color: #ff3b30;
    display: inline-block;
    animation: heartbeat-615f4a3b 1.5s infinite
}

@keyframes heartbeat-615f4a3b {
    0% {
        transform: scale(1)
    }

    5% {
        transform: scale(1.2)
    }

    10% {
        transform: scale(1)
    }

    15% {
        transform: scale(1.1)
    }

    20% {
        transform: scale(1)
    }

    to {
        transform: scale(1)
    }
}

@media (max-width: 768px) {
    .footer-container[data-v-615f4a3b] {
        flex-direction: column
    }

    .main-section[data-v-615f4a3b] {
        max-width: 100%;
        margin-right: 0
    }

    .footer-links-container[data-v-615f4a3b] {
        width: 100%;
        gap: 20px
    }

    .footer-section[data-v-615f4a3b] {
        min-width: 45%
    }
}

@media (max-width: 480px) {
    .footer-section[data-v-615f4a3b] {
        min-width: 100%
    }

    .footer-links-container[data-v-615f4a3b] {
        flex-direction: column;
        gap: 10px
    }

    .footer-section[data-v-615f4a3b] {
        margin-bottom: 24px
    }
}

.app-container {
    min-height: 100vh;
    flex-direction: column !important;
    background-color: var(--apple-bg);
    width: 100% !important;
    overflow-x: hidden !important
}

.main-content-container {
    flex: 1;
    position: relative;
    width: 100% !important;
    flex-direction: column !important
}

.content-wrapper {
    display: flex;
    position: relative;
    width: 100%;
    flex: 1
}

.apple-sidebar {
    background-color: var(--apple-bg) !important;
    border-right: 1px solid rgba(0, 0, 0, .1) !important;
    height: 100vh !important;
    position: fixed !important;
    left: 0 !important;
    top: 0 !important;
    z-index: 10 !important;
    transition: all .3s cubic-bezier(.4, 0, .2, 1) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    width: 280px !important
}

.collapsed-sidebar {
    width: 40px;
    background-color: var(--apple-bg);
    position: fixed;
    left: 0;
    top: 0;
    height: 100vh;
    z-index: 10;
    border-right: 1px solid rgba(0, 0, 0, .1);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .3s;
    cursor: pointer
}

.expand-button {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: var(--apple-text-secondary);
    font-size: 12px
}

.expand-button .el-icon {
    font-size: 18px;
    margin-bottom: 4px
}

.apple-main {
    background-color: var(--apple-bg);
    padding: 20px;
    margin-top: 0;
    min-height: 100vh;
    width: 100%;
    box-sizing: border-box;
    transition: all .3s
}

.apple-main.with-sidebar {
    margin-left: 280px;
    width: calc(100% - 280px)
}

.apple-main.with-collapsed-sidebar {
    margin-left: 40px;
    width: calc(100% - 40px)
}

.apple-footer {
    width: 100%;
    padding: 0 !important;
    height: auto !important;
    transition: all .3s
}

.apple-footer.with-sidebar {
    margin-left: 280px;
    width: calc(100% - 280px)
}

.apple-footer.with-collapsed-sidebar {
    margin-left: 40px;
    width: calc(100% - 40px)
}

.mobile-menu-button {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background-color: var(--apple-blue);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px #00000026;
    z-index: 100;
    cursor: pointer
}

.mobile-menu-button .el-icon {
    font-size: 24px
}

.page-fade-enter-active,
.page-fade-leave-active {
    transition: opacity .3s ease
}

.page-fade-enter-from,
.page-fade-leave-to {
    opacity: 0
}

@media (max-width: 768px) {
    .apple-main {
        margin-left: 0 !important;
        width: 100% !important;
        padding: 16px
    }

    .apple-footer {
        margin-left: 0 !important;
        width: 100% !important
    }
}

.animation-enter-from[data-v-301afadc],
.animation-leave-to[data-v-301afadc] {
    transform: translate(20px);
    opacity: 0
}

.animation-enter-to[data-v-301afadc],
.animation-leave-from[data-v-301afadc] {
    opacity: 1
}

.animation-enter-active[data-v-301afadc] {
    transition: all .7s ease
}

.animation-leave-active[data-v-301afadc] {
    transition: all .3s cubic-bezier(1, .6, .6, 1)
}

*,
: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(59 130 246 / .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(59 130 246 / .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:
}

*,
:before,
:after {
    box-sizing: border-box;
    border-width: 0;
    border-style: solid;
    border-color: #e5e7eb
}

:before,
:after {
    --tw-content: ""
}

html,
:host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4;
    font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", Segoe UI Symbol, "Noto Color Emoji";
    font-feature-settings: normal;
    font-variation-settings: normal;
    -webkit-tap-highlight-color: transparent
}

body {
    margin: 0;
    line-height: inherit
}

hr {
    height: 0;
    color: inherit;
    border-top-width: 1px
}

abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: inherit;
    font-weight: inherit
}

a {
    color: inherit;
    text-decoration: inherit
}

b,
strong {
    font-weight: bolder
}

code,
kbd,
samp,
pre {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
    font-feature-settings: normal;
    font-variation-settings: normal;
    font-size: 1em
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    font-size: 100%;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    color: inherit;
    margin: 0;
    padding: 0
}

button,
select {
    text-transform: none
}

button,
input:where([type=button]),
input:where([type=reset]),
input:where([type=submit]) {
    -webkit-appearance: button;
    background-color: transparent;
    background-image: none
}

:-moz-focusring {
    outline: auto
}

:-moz-ui-invalid {
    box-shadow: none
}

progress {
    vertical-align: baseline
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

summary {
    display: list-item
}

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
}

dialog {
    padding: 0
}

textarea {
    resize: vertical
}

input::-moz-placeholder,
textarea::-moz-placeholder {
    opacity: 1;
    color: #9ca3af
}

input::placeholder,
textarea::placeholder {
    opacity: 1;
    color: #9ca3af
}

button,
[role=button] {
    cursor: pointer
}

:disabled {
    cursor: default
}

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
    display: block;
    vertical-align: middle
}

img,
video {
    max-width: 100%;
    height: auto
}

[hidden]:where(:not([hidden=until-found])) {
    display: none
}

:root {
    font-family: SF Pro Display, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif
}

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.collapse {
    visibility: collapse
}

.static {
    position: static
}

.fixed {
    position: fixed
}

.absolute {
    position: absolute
}

.relative {
    position: relative
}

.sticky {
    position: sticky
}

.top-0 {
    top: 0
}

.-z-10 {
    z-index: -10
}

.z-10 {
    z-index: 10
}

.mb-2 {
    margin-bottom: .5rem
}

.mb-3 {
    margin-bottom: .75rem
}

.mb-4 {
    margin-bottom: 1rem
}

.mb-5 {
    margin-bottom: 1.25rem
}

.mb-6 {
    margin-bottom: 1.5rem
}

.ml-1 {
    margin-left: .25rem
}

.ml-2 {
    margin-left: .5rem
}

.ml-3 {
    margin-left: .75rem
}

.ml-4 {
    margin-left: 1rem
}

.ml-5 {
    margin-left: 1.25rem
}

.mr-1 {
    margin-right: .25rem
}

.mr-2 {
    margin-right: .5rem
}

.mr-3 {
    margin-right: .75rem
}

.mt-2 {
    margin-top: .5rem
}

.mt-3 {
    margin-top: .75rem
}

.mt-4 {
    margin-top: 1rem
}

.mt-5 {
    margin-top: 1.25rem
}

.mt-6 {
    margin-top: 1.5rem
}

.mt-8 {
    margin-top: 2rem
}

.block {
    display: block
}

.inline {
    display: inline
}

.flex {
    display: flex
}

.table {
    display: table
}

.grid {
    display: grid
}

.hidden {
    display: none
}

.h-12 {
    height: 3rem
}

.h-24 {
    height: 6rem
}

.h-28 {
    height: 7rem
}

.h-5 {
    height: 1.25rem
}

.h-60 {
    height: 15rem
}

.h-8 {
    height: 2rem
}

.h-96 {
    height: 24rem
}

.h-\[1px\] {
    height: 1px
}

.h-\[200px\] {
    height: 200px
}

.h-\[38rem\] {
    height: 38rem
}

.h-\[510px\] {
    height: 510px
}

.h-full {
    height: 100%
}

.max-h-\[500px\] {
    max-height: 500px
}

.w-1 {
    width: .25rem
}

.w-1\/2 {
    width: 50%
}

.w-1\/5 {
    width: 20%
}

.w-10 {
    width: 2.5rem
}

.w-12 {
    width: 3rem
}

.w-16 {
    width: 4rem
}

.w-2\/3 {
    width: 66.666667%
}

.w-2\/6 {
    width: 33.333333%
}

.w-20 {
    width: 5rem
}

.w-24 {
    width: 6rem
}

.w-3\/4 {
    width: 75%
}

.w-36 {
    width: 9rem
}

.w-4\/5 {
    width: 80%
}

.w-4\/6 {
    width: 66.666667%
}

.w-48 {
    width: 12rem
}

.w-60 {
    width: 15rem
}

.w-72 {
    width: 18rem
}

.w-\[200px\] {
    width: 200px
}

.w-\[30rem\] {
    width: 30rem
}

.w-full {
    width: 100%
}

.max-w-\[1000px\] {
    max-width: 1000px
}

.max-w-\[25\%\] {
    max-width: 25%
}

.max-w-\[30\%\] {
    max-width: 30%
}

.max-w-\[60\%\] {
    max-width: 60%
}

.max-w-full {
    max-width: 100%
}

.flex-1 {
    flex: 1 1 0%
}

.flex-grow {
    flex-grow: 1
}

.grow-\[1\.5\] {
    flex-grow: 1.5
}

.grow-\[3\] {
    flex-grow: 3
}

.transform {
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}

.resize {
    resize: both
}

.flex-row-reverse {
    flex-direction: row-reverse
}

.flex-col {
    flex-direction: column
}

.flex-wrap {
    flex-wrap: wrap
}

.items-center {
    align-items: center
}

.justify-start {
    justify-content: flex-start
}

.justify-center {
    justify-content: center
}

.justify-between {
    justify-content: space-between
}

.gap-1 {
    gap: .25rem
}

.overflow-auto {
    overflow: auto
}

.overflow-hidden {
    overflow: hidden
}

.rounded {
    border-radius: .25rem
}

.rounded-2xl {
    border-radius: 1rem
}

.rounded-lg {
    border-radius: .5rem
}

.rounded-md {
    border-radius: .375rem
}

.rounded-sm {
    border-radius: .125rem
}

.border {
    border-width: 1px
}

.border-2 {
    border-width: 2px
}

.border-b {
    border-bottom-width: 1px
}

.border-solid {
    border-style: solid
}

.border-dashed {
    border-style: dashed
}

.border-blue-400 {
    --tw-border-opacity: 1;
    border-color: rgb(96 165 250 / var(--tw-border-opacity, 1))
}

.bg-\[\#f5f5fb\] {
    --tw-bg-opacity: 1;
    background-color: rgb(245 245 251 / var(--tw-bg-opacity, 1))
}

.bg-blue-500 {
    --tw-bg-opacity: 1;
    background-color: rgb(59 130 246 / 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-red-100 {
    --tw-bg-opacity: 1;
    background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1))
}

.bg-white {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1))
}

.p-1 {
    padding: .25rem
}

.p-10 {
    padding: 2.5rem
}

.p-2 {
    padding: .5rem
}

.p-3 {
    padding: .75rem
}

.p-4 {
    padding: 1rem
}

.p-5 {
    padding: 1.25rem
}

.px-4 {
    padding-left: 1rem;
    padding-right: 1rem
}

.py-2 {
    padding-top: .5rem;
    padding-bottom: .5rem
}

.pl-10 {
    padding-left: 2.5rem
}

.pl-3 {
    padding-left: .75rem
}

.pr-3 {
    padding-right: .75rem
}

.text-left {
    text-align: left
}

.text-center {
    text-align: center
}

.text-right {
    text-align: right
}

.indent-8 {
    text-indent: 2rem
}

.text-2xl {
    font-size: 1.5rem;
    line-height: 2rem
}

.text-5xl {
    font-size: 3rem;
    line-height: 1
}

.text-8xl {
    font-size: 6rem;
    line-height: 1
}

.text-lg {
    font-size: 1.125rem;
    line-height: 1.75rem
}

.text-sm {
    font-size: .875rem;
    line-height: 1.25rem
}

.text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem
}

.font-bold {
    font-weight: 700
}

.font-semibold {
    font-weight: 600
}

.uppercase {
    text-transform: uppercase
}

.lowercase {
    text-transform: lowercase
}

.leading-\[15rem\] {
    line-height: 15rem
}

.leading-\[6rem\] {
    line-height: 6rem
}

.leading-relaxed {
    line-height: 1.625
}

.text-gray-400 {
    --tw-text-opacity: 1;
    color: rgb(156 163 175 / var(--tw-text-opacity, 1))
}

.text-gray-600 {
    --tw-text-opacity: 1;
    color: rgb(75 85 99 / var(--tw-text-opacity, 1))
}

.underline {
    text-decoration-line: underline
}

.antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.outline {
    outline-style: solid
}

.blur {
    --tw-blur: blur(8px);
    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)
}

.grayscale {
    --tw-grayscale: grayscale(100%);
    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)
}

.invert {
    --tw-invert: invert(100%);
    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)
}

.backdrop-filter {
    -webkit-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-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, -webkit-backdrop-filter;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
    transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    transition-duration: .15s
}

:root {
    --base-gray: #f5f5fb;
    --base-black: #444
}

.hover\:bg-gray-200:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1))
}

@media (max-width: 768px) {
    .c-xs\:ml-3 {
        margin-left: .75rem
    }

    .c-xs\:mr-3 {
        margin-right: .75rem
    }
}

@media (min-width: 768px) {
    .md\:text-base {
        font-size: 1rem;
        line-height: 1.5rem
    }
}

:root {
    --apple-blue: #0071e3;
    --apple-blue-dark: #0051a2;
    --apple-blue-light: #40a8ff;
    --apple-red: #ff3b30;
    --apple-green: #34c759;
    --apple-yellow: #ffcc00;
    --apple-orange: #ff9500;
    --apple-purple: #af52de;
    --apple-pink: #ff2d55;
    --apple-bg: #f5f5f7;
    --apple-bg-dark: #1d1d1f;
    --apple-text: #1d1d1f;
    --apple-text-secondary: #515154;
    --apple-text-tertiary: #86868b;
    --apple-border: #d2d2d7;
    --apple-divider: #e5e5e7;
    --apple-shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);
    --apple-shadow-sm: 0 2px 4px rgba(0, 0, 0, .05);
    --apple-shadow: 0 4px 8px rgba(0, 0, 0, .08);
    --apple-shadow-lg: 0 8px 16px rgba(0, 0, 0, .12);
    --apple-shadow-xl: 0 12px 24px rgba(0, 0, 0, .15);
    --apple-radius-xs: 4px;
    --apple-radius-sm: 6px;
    --apple-radius: 10px;
    --apple-radius-lg: 14px;
    --apple-radius-xl: 18px;
    --apple-radius-full: 9999px;
    --apple-font: "SF Pro Display", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    --apple-mono-font: "SF Mono", SFMono-Regular, ui-monospace, Menlo, Monaco, Consolas, monospace;
    --apple-transition: all .3s cubic-bezier(.42, 0, .58, 1);
    --apple-spring: all .5s cubic-bezier(.25, .1, .25, 1.4);
    --apple-spacing-xs: 4px;
    --apple-spacing-sm: 8px;
    --apple-spacing-md: 16px;
    --apple-spacing-lg: 24px;
    --apple-spacing-xl: 32px;
    --apple-spacing-2xl: 48px;
    --apple-font-xs: 12px;
    --apple-font-sm: 14px;
    --apple-font-md: 16px;
    --apple-font-lg: 20px;
    --apple-font-xl: 24px;
    --apple-font-2xl: 32px;
    --apple-font-3xl: 40px;
    --apple-weight-light: 300;
    --apple-weight-regular: 400;
    --apple-weight-medium: 500;
    --apple-weight-semibold: 600;
    --apple-weight-bold: 700
}

body {
    font-family: var(--apple-font);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background-color: var(--apple-bg);
    color: var(--apple-text);
    line-height: 1.5;
    letter-spacing: -.015em
}

.apple-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: var(--apple-font-sm);
    font-weight: var(--apple-weight-medium);
    padding: var(--apple-spacing-sm) var(--apple-spacing-md);
    border-radius: var(--apple-radius-xl);
    cursor: pointer;
    transition: var(--apple-transition);
    text-decoration: none;
    border: none;
    outline: none
}

.apple-btn-primary {
    background-color: var(--apple-blue);
    color: #fff
}

.apple-btn-primary:hover {
    background-color: var(--apple-blue-dark)
}

.apple-btn-secondary {
    background-color: #0000000d;
    color: var(--apple-text)
}

.apple-btn-secondary:hover {
    background-color: #0000001a
}

.apple-btn-danger {
    background-color: var(--apple-red);
    color: #fff
}

.apple-btn-danger:hover {
    background-color: #e0201a
}

.apple-btn-ghost {
    background-color: transparent;
    color: var(--apple-text);
    border: 1px solid var(--apple-border)
}

.apple-btn-ghost:hover {
    background-color: #00000008
}

.apple-btn-link {
    background-color: transparent;
    color: var(--apple-blue);
    padding: 0;
    border-radius: 0
}

.apple-btn-link:hover {
    text-decoration: underline
}

.apple-btn-sm {
    padding: 4px 12px;
    font-size: var(--apple-font-xs)
}

.apple-btn-lg {
    padding: 10px 20px;
    font-size: var(--apple-font-md)
}

.apple-card {
    background: white;
    border-radius: var(--apple-radius);
    box-shadow: var(--apple-shadow);
    overflow: hidden;
    transition: var(--apple-transition)
}

.apple-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--apple-shadow-lg)
}

.apple-input {
    font-family: var(--apple-font);
    font-size: var(--apple-font-sm);
    padding: 10px 16px;
    border-radius: var(--apple-radius-xl);
    border: 1px solid var(--apple-border);
    background-color: #fff;
    transition: var(--apple-transition);
    outline: none;
    width: 100%
}

.apple-input:focus {
    border-color: var(--apple-blue);
    box-shadow: 0 0 0 3px #0071e333
}

.apple-tag {
    display: inline-flex;
    align-items: center;
    padding: 4px 8px;
    font-size: var(--apple-font-xs);
    font-weight: var(--apple-weight-medium);
    border-radius: var(--apple-radius-full);
    background: rgba(0, 0, 0, .05)
}

.apple-tag-blue {
    background-color: #0071e31a;
    color: var(--apple-blue)
}

.apple-tag-green {
    background-color: #34c7591a;
    color: var(--apple-green)
}

.apple-tag-red {
    background-color: #ff3b301a;
    color: var(--apple-red)
}

.apple-tag-yellow {
    background-color: #ffcc001a;
    color: #b8860b
}

.apple-tag-purple {
    background-color: #af52de1a;
    color: var(--apple-purple)
}

.tool-card {
    border-radius: var(--apple-radius);
    background: white;
    box-shadow: var(--apple-shadow-sm);
    padding: var(--apple-spacing-md);
    transition: var(--apple-transition);
    border: 1px solid transparent
}

.tool-card:hover {
    transform: translateY(-3px);
    box-shadow: var(--apple-shadow);
    border-color: var(--apple-blue)
}

.tool-card-icon {
    margin-bottom: var(--apple-spacing-sm);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: var(--apple-radius);
    background: linear-gradient(135deg, rgba(0, 113, 227, .1), rgba(0, 113, 227, .05))
}

.tool-card-title {
    font-size: var(--apple-font-md);
    font-weight: var(--apple-weight-semibold);
    margin-bottom: var(--apple-spacing-sm);
    color: var(--apple-text)
}

.tool-card-desc {
    font-size: var(--apple-font-sm);
    color: var(--apple-text-secondary);
    line-height: 1.4
}

.apple-heading-1 {
    font-size: var(--apple-font-3xl);
    font-weight: var(--apple-weight-bold);
    letter-spacing: -.03em;
    color: var(--apple-text);
    margin-bottom: var(--apple-spacing-lg)
}

.apple-heading-2 {
    font-size: var(--apple-font-2xl);
    font-weight: var(--apple-weight-semibold);
    letter-spacing: -.02em;
    color: var(--apple-text);
    margin-bottom: var(--apple-spacing-md)
}

.apple-heading-3 {
    font-size: var(--apple-font-xl);
    font-weight: var(--apple-weight-semibold);
    letter-spacing: -.01em;
    color: var(--apple-text);
    margin-bottom: var(--apple-spacing-md)
}

.apple-heading-4 {
    font-size: var(--apple-font-lg);
    font-weight: var(--apple-weight-medium);
    color: var(--apple-text);
    margin-bottom: var(--apple-spacing-sm)
}

.apple-text {
    font-size: var(--apple-font-sm);
    line-height: 1.5;
    color: var(--apple-text-secondary);
    margin-bottom: var(--apple-spacing-md)
}

.apple-text-sm {
    font-size: var(--apple-font-xs);
    line-height: 1.5;
    color: var(--apple-text-tertiary)
}

.apple-text-lg {
    font-size: var(--apple-font-md);
    line-height: 1.5;
    color: var(--apple-text)
}

.el-button {
    font-family: var(--apple-font);
    border-radius: var(--apple-radius-xl) !important
}

.el-button--primary {
    background-color: var(--apple-blue) !important;
    border-color: var(--apple-blue) !important
}

.el-button--primary:hover {
    background-color: var(--apple-blue-dark) !important;
    border-color: var(--apple-blue-dark) !important
}

.el-input__wrapper {
    border-radius: var(--apple-radius-xl) !important
}

.el-drawer {
    background-color: var(--apple-bg) !important
}

.el-message {
    border-radius: var(--apple-radius) !important;
    font-family: var(--apple-font) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    backdrop-filter: blur(10px) !important
}

.el-message--success {
    background-color: #34c759e6 !important;
    color: #fff !important;
    border-color: var(--apple-green) !important
}

.el-message--success .el-message__icon {
    color: #fff !important
}

.el-message--error {
    background-color: #ff3b30e6 !important;
    color: #fff !important;
    border-color: var(--apple-red) !important
}

.el-message--error .el-message__icon {
    color: #fff !important
}

.el-message--warning {
    background-color: #ff9500e6 !important;
    color: #fff !important;
    border-color: var(--apple-orange) !important
}

.el-message--warning .el-message__icon {
    color: #fff !important
}

.el-message--info {
    background-color: #0071e3e6 !important;
    color: #fff !important;
    border-color: var(--apple-blue) !important
}

.el-message--info .el-message__icon {
    color: #fff !important
}

.el-dropdown-menu {
    border-radius: var(--apple-radius) !important;
    box-shadow: var(--apple-shadow-lg) !important;
    border: none !important
}

.el-dropdown-menu__item {
    font-family: var(--apple-font) !important
}

.el-dropdown-menu__item:hover {
    background-color: #0000000a !important
}

.el-tabs__item {
    font-family: var(--apple-font) !important
}

.el-tabs__active-bar {
    background-color: var(--apple-blue) !important
}

.el-tabs__item.is-active {
    color: var(--apple-blue) !important
}

.el-table {
    font-family: var(--apple-font) !important
}

.el-table th {
    background-color: var(--apple-bg) !important;
    font-weight: var(--apple-weight-medium) !important
}

body,
html {
    margin: 0;
    padding: 0;
    height: 100%
}

#app {
    height: 100%
}

.apple-flex {
    display: flex
}

.apple-flex-center {
    display: flex;
    align-items: center;
    justify-content: center
}

.apple-flex-between {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.apple-flex-col {
    display: flex;
    flex-direction: column
}

.apple-mt-xs {
    margin-top: var(--apple-spacing-xs)
}

.apple-mt-sm {
    margin-top: var(--apple-spacing-sm)
}

.apple-mt-md {
    margin-top: var(--apple-spacing-md)
}

.apple-mt-lg {
    margin-top: var(--apple-spacing-lg)
}

.apple-mt-xl {
    margin-top: var(--apple-spacing-xl)
}

.apple-mb-xs {
    margin-bottom: var(--apple-spacing-xs)
}

.apple-mb-sm {
    margin-bottom: var(--apple-spacing-sm)
}

.apple-mb-md {
    margin-bottom: var(--apple-spacing-md)
}

.apple-mb-lg {
    margin-bottom: var(--apple-spacing-lg)
}

.apple-mb-xl {
    margin-bottom: var(--apple-spacing-xl)
}

.apple-p-xs {
    padding: var(--apple-spacing-xs)
}

.apple-p-sm {
    padding: var(--apple-spacing-sm)
}

.apple-p-md {
    padding: var(--apple-spacing-md)
}

.apple-p-lg {
    padding: var(--apple-spacing-lg)
}

.apple-p-xl {
    padding: var(--apple-spacing-xl)
}

@media (max-width: 768px) {
    .apple-hide-md {
        display: none !important
    }

    .apple-heading-1 {
        font-size: var(--apple-font-2xl)
    }

    .apple-heading-2 {
        font-size: var(--apple-font-xl)
    }

    .apple-heading-3 {
        font-size: var(--apple-font-lg)
    }
}

@media (max-width: 480px) {
    .apple-hide-sm {
        display: none !important
    }

    .apple-heading-1 {
        font-size: var(--apple-font-xl)
    }

    .apple-heading-2 {
        font-size: var(--apple-font-lg)
    }

    .apple-btn {
        padding: 6px 12px
    }
}