/* Import Google font - Poppins */
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700&display=swap");
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Poppins", sans-serif;
    transition: all 0.4s ease;
}
:root {
    --white-color: #fff;
    --blue-color: #4070f4;
    --grey-color: #707070;
    --grey-color-light: #aaa;
    --solobea-color: rgb(243, 246, 246);
}
body {
    background-color: var(--solobea-color);
    transition: all 0.5s ease;
}
body.dark {
    background-color: #333;
}
body.dark {
    --white-color: #333;
    --blue-color: #fff;
    --grey-color: #f2f2f2;
    --grey-color-light: #aaa;
    --solobea-color: rgba(104, 118, 118, 0.93);
}
.overlay {
    display: none; /* Hidden by default */
    position: fixed;
    justify-content: center; /* Center horizontally */
    align-items: center; /* Center vertically */
    top: 0; /* Below the header */
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 10000;
}

a{
    text-decoration: none;
    color: inherit;
}
textarea {
    resize: vertical;
}
.pointer-events-auto {
    pointer-events: auto;
}
.pointer-events-none {
    pointer-events: none;
}
.collapse {
    visibility: collapse;
}
.invisible {
    visibility: hidden;
}
.visible {
    visibility: visible;
}
.absolute {
    position: absolute;
}
.fixed {
    position: fixed;
}
.relative {
    position: relative;
}
.static {
    position: static;
}
/* Fallback for inset-0 */
.inset-0 {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
/* Fallback for top classes */
.top-0 {
    top: 0;
}
.top-2 {
    top: 0.5rem; /* spacing 2 => 0.5rem */
}
.top-14 {
    top: 3.5rem; /* spacing 14 => 3.5rem */
}

/* Fallback for right classes */
.right-0 {
    right: 0;
}
.right-2 {
    right: 0.5rem;
}
.right-4 {
    right: 1rem;
}
/* Fallback for left classes */
.left-0 {
    left: 0;
}

/* Z-index fallback */
.z-50 {
    z-index: 50;
}
.z-100 {
    z-index: 100;
}
.z-auto {
    z-index: auto;
}
.mx-2 {
    margin-left: 8px;
    margin-right: 8px;
}

.mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.my-2 {
    margin-top: 8px;
    margin-bottom: 8px;
}

.mt-1 {
    margin-top: 4px;
}
.mt-2 {
    margin-top: 8px;
}
.mt-3 {
    margin-top: 12px;
}
.mt-4 {
    margin-top: 16px;
}
.mt-6 {
    margin-top: 24px;
}
.mt-8 {
    margin-top: 32px;
}
.mt-12 {
    margin-top: 48px;
}

.mr-2 {
    margin-right: 8px;
}

.mb-2 {
    margin-bottom: 8px;
}
.mb-4 {
    margin-bottom: 16px;
}
.mb-6 {
    margin-bottom: 24px;
}
.mb-8 {
    margin-bottom: 32px;
}
.mb-12 {
    margin-bottom: 48px;
}

.ml-2 {
    margin-left: 8px;
}
.ml-3 {
    margin-left: 12px;
}
.ml-5 {
    margin-left: 20px;
}

.box-border {
    box-sizing: border-box;
}

.box-content {
    box-sizing: content-box;
}

.block {
    display: block;
}
.hidden {
    display: none;
}
.inline {
    display: inline;
}
.inline-block {
    display: inline-block;
}
.list-item {
    display: list-item;
}
.table {
    display: table;
}
.table-caption {
    display: table-caption;
}
.table-cell {
    display: table-cell;
}
.table-column {
    display: table-column;
}
.table-column-group {
    display: table-column-group;
}
.table-footer-group {
    display: table-footer-group;
}
.table-header-group {
    display: table-header-group;
}
.table-row {
    display: table-row;
}
.table-row-group {
    display: table-row-group;
}
.size-6 {
    width: 24px;
    height: 24px;
}

.h-6 {
    height: 24px;
}
.h-14 {
    height: 56px;
}
.h-16 {
    height: 64px;
}
.h-24 {
    height: 96px;
}
.h-40 {
    height: 160px;
}

.h-full {
    height: 100%;
}
.max-h-none {
    max-height: none;
}

.w-0 {
    width: 0;
}

.w-6 {
    width: 24px;
}

.w-16 {
    width: 64px;
}
.w-24 {
    width: 96px;
}
.w-60 {
    width: 240px;
}
.w-64 {
    width: 256px;
}
.w-full {
    width: 100%;
}

/* -- Max Width / Min Width -- */
.max-w-2xl {
    max-width: 42rem;
} /* 672px */
.max-w-3xl {
    max-width: 48rem;
} /* 768px */
.max-w-4xl {
    max-width: 56rem;
} /* 896px */
.max-w-6xl {
    max-width: 72rem;
} /* 1152px */
.max-w-full {
    max-width: 100%;
}
.max-w-lg {
    max-width: 32rem;
} /* 512px */
.max-w-md {
    max-width: 28rem;
} /* 448px */
.max-w-none {
    max-width: none;
}
.min-w-full {
    min-width: 100%;
}

/* -- Table Layout -- */
.table-auto {
    table-layout: auto;
}
.table-fixed {
    table-layout: fixed;
}

/* -- Table Captions -- */
.caption-bottom {
    caption-side: bottom;
}
.caption-top {
    caption-side: top;
}

/* -- Border Collapse -- */
.border-collapse {
    border-collapse: collapse;
}
.border-separate {
    border-collapse: separate;
}
/* -- Translations -- */
.-translate-full {
    transform: translate(-100%, -100%);
}
.translate-full {
    transform: translate(100%, 100%);
}
.-translate-x-full {
    transform: translateX(-100%);
}
.translate-3d {
    transform: translate3d(0, 0, 0);
}
.translate-none {
    transform: translate(0, 0);
}

/* -- Scales -- */
.scale-3d {
    transform: scale3d(1, 1, 1);
}
.scale-none {
    transform: scale(1);
}
.cursor-not-allowed {
    cursor: not-allowed;
}
.cursor-pointer {
    cursor: pointer;
}

.resize {
    resize: both;
}
.resize-none {
    resize: none;
}
.resize-x {
    resize: horizontal;
}
.resize-y {
    resize: vertical;
}

/* --- Lists --- */
.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;
}
.list-image-none {
    list-style-image: none;
}

/* --- Appearance --- */
.appearance-none {
    -webkit-appearance: none;
    appearance: none;
}

/* --- Vertical Spacing Settings --- */
.space-y-2 {
    margin-block-start: 0.5rem; /* 8px */
    margin-block-end: 0.5rem; /* 8px */
}
.space-y-4 {
    margin-block-start: 1rem; /* 16px */
    margin-block-end: 1rem; /* 16px */
}
.space-y-6 {
    margin-block-start: 1.5rem; /* 24px */
    margin-block-end: 1.5rem; /* 24px */
}
.space-y-8 {
    margin-block-start: 2rem; /* 32px */
    margin-block-end: 2rem; /* 32px */
}
.space-y-reverse {
    margin-block-start: 0;
    margin-block-end: 0;
}

/* --- Horizontal Spacing Settings --- */
.space-x-4 {
    margin-inline-start: 1rem; /* 16px */
    margin-inline-end: 1rem; /* 16px */
}
.space-x-reverse {
    margin-inline-start: 0;
    margin-inline-end: 0;
}

/* --- Overflow Settings --- */
.truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.overflow-hidden {
    overflow: hidden;
}
.overflow-x-auto {
    overflow-x: auto;
}
.overflow-y-auto {
    overflow-y: auto;
}
.scroll-auto {
    scroll-behavior: auto;
}
.scroll-smooth {
    scroll-behavior: smooth;
}

/* --- Border Radius Settings --- */
.rounded {
    border-radius: 0.25rem; /* 4px */
}
.rounded-full {
    border-radius: 9999px;
}
.rounded-lg {
    border-radius: 0.5rem; /* 8px */
}
.rounded-md {
    border-radius: 0.375rem; /* 6px */
}
.rounded-sm {
    border-radius: 0.125rem; /* 2px */
}
.rounded-s {
    border-start-start-radius: 0.25rem; /* 4px */
    border-end-start-radius: 0.25rem; /* 4px */
}
.rounded-ss {
    border-start-start-radius: 0.25rem; /* 4px */
}
.rounded-e {
    border-start-end-radius: 0.25rem; /* 4px */
    border-end-end-radius: 0.25rem; /* 4px */
}
.rounded-se {
    border-start-end-radius: 0.25rem; /* 4px */
}
.rounded-ee {
    border-end-end-radius: 0.25rem; /* 4px */
}
.rounded-es {
    border-end-start-radius: 0.25rem; /* 4px */
}
.rounded-t {
    border-top-left-radius: 0.25rem; /* 4px */
    border-top-right-radius: 0.25rem; /* 4px */
}
.rounded-l {
    border-top-left-radius: 0.25rem; /* 4px */
    border-bottom-left-radius: 0.25rem; /* 4px */
}
.rounded-tl {
    border-top-left-radius: 0.25rem; /* 4px */
}
.rounded-r {
    border-top-right-radius: 0.25rem; /* 4px */
    border-bottom-right-radius: 0.25rem; /* 4px */
}
.rounded-tr {
    border-top-right-radius: 0.25rem; /* 4px */
}
.rounded-b {
    border-bottom-right-radius: 0.25rem; /* 4px */
    border-bottom-left-radius: 0.25rem; /* 4px */
}
.rounded-br {
    border-bottom-right-radius: 0.25rem; /* 4px */
}
.rounded-bl {
    border-bottom-left-radius: 0.25rem; /* 4px */
}

/* --- Border Settings --- */
.border {
    border-style: solid;
    border-width: 1px;
}
.border-x {
    border-inline-style: solid;
    border-inline-width: 1px;
}
.border-y {
    border-block-style: solid;
    border-block-width: 1px;
}
.border-s {
    border-inline-start-style: solid;
    border-inline-start-width: 1px;
}
.border-e {
    border-inline-end-style: solid;
    border-inline-end-width: 1px;
}
.border-t {
    border-top-style: solid;
    border-top-width: 1px;
}
.border-r {
    border-right-style: solid;
    border-right-width: 1px;
}
.border-b {
    border-bottom-style: solid;
    border-bottom-width: 1px;
}
.border-l {
    border-left-style: solid;
    border-left-width: 1px;
}
.border-dashed {
    border-style: dashed;
}
.border-dotted {
    border-style: dotted;
}
.border-double {
    border-style: double;
}
.border-hidden {
    border-style: hidden;
}
.border-none {
    border-style: none;
}
.border-solid {
    border-style: solid;
}
/* --- Border Colors --- */
.border-gray-200 {
    border-color: #e5e7eb;
}
.border-gray-300 {
    border-color: #d1d5db;
}
.border-gray-700 {
    border-color: #374151;
}

/* --- Background Colors --- */
.bg-black {
    background-color: #000000;
}
.bg-black-50 {
    background-color: rgba(0, 0, 0, 0.5);
}
.bg-blue-500 {
    background-color: #3b82f6;
}
.bg-blue-600 {
    background-color: #2563eb;
}
.bg-gray-50 {
    background-color: #f9fafb;
}
.bg-gray-100 {
    background-color: #f3f4f6;
}
.bg-gray-300 {
    background-color: #e5e7eb;
}
.bg-gray-400 {
    background-color: #d1d5db;
}
.bg-gray-500 {
    background-color: #6b7280;
}
.bg-gray-700 {
    background-color: #374151;
}
.bg-gray-800 {
    background-color: #1f2937;
}
.bg-gray-900 {
    background-color: #111827;
}
.bg-green-500 {
    background-color: #10b981;
}
.bg-green-600 {
    background-color: #16a34a;
}
.bg-inherit {
    background-color: inherit;
}
.bg-purple-600 {
    background-color: #8b5cf6;
}
.bg-red-500 {
    background-color: #f87171;
}
.bg-red-500-50 {
    background-color: rgba(248, 113, 113, 0.5);
}
.bg-transparent {
    background-color: transparent;
}
.bg-white {
    background-color: #ffffff;
}

.bg-conic {
    background-image: conic-gradient(from 45deg, #ff7f7f, #f7f7f7);
}

.bg-gradient-to-right {
    background-image: linear-gradient(to right, #ff7f7f, #f7f7f7);
}

.bg-radial {
    background-image: radial-gradient(circle, #ff7f7f, #f7f7f7);
}

.bg-none {
    background-image: none;
}

.from-blue-600 {
    background-image: linear-gradient(to right, #2563eb, #60a5fa);
}
.to-blue-400 {
    background-image: linear-gradient(to right, #2563eb, #60a5fa);
}

.box-decoration-clone {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}
.box-decoration-slice {
    -webkit-box-decoration-break: slice;
    box-decoration-break: slice;
}
.decoration-clone {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}
.decoration-slice {
    -webkit-box-decoration-break: slice;
    box-decoration-break: slice;
}
.bg-auto {
    background-size: auto;
}
.bg-contain {
    background-size: contain;
}
.bg-cover {
    background-size: cover;
}
.bg-fixed {
    background-attachment: fixed;
}
.bg-local {
    background-attachment: local;
}
.bg-scroll {
    background-attachment: scroll;
}
.bg-clip-border {
    background-clip: border-box;
}
.bg-clip-content {
    background-clip: content-box;
}
.bg-clip-padding {
    background-clip: padding-box;
}
.bg-clip-text {
    -webkit-background-clip: text; /* Add for better browser support */
}

.bg-bottom {
    background-position: bottom;
}
.bg-center {
    background-position: center;
}
.bg-left {
    background-position: left;
}
.bg-left-bottom {
    background-position: left bottom;
}
.bg-left-top {
    background-position: left top;
}
.bg-right {
    background-position: right;
}
.bg-right-bottom {
    background-position: right bottom;
}
.bg-right-top {
    background-position: right top;
}
.bg-top {
    background-position: top;
}
.bg-no-repeat {
    background-repeat: no-repeat;
}
.bg-repeat {
    background-repeat: repeat;
}
.bg-repeat-round {
    background-repeat: round;
}
.bg-repeat-space {
    background-repeat: space;
}
.bg-repeat-x {
    background-repeat: repeat-x;
}
.bg-repeat-y {
    background-repeat: repeat-y;
}
.p-1 {
    padding: 4px;
}
.p-2 {
    padding: 8px;
}
.p-3 {
    padding: 12px;
}
.p-4 {
    padding: 16px;
}
.p-6 {
    padding: 24px;
}
.p-8 {
    padding: 32px;
}
.p-10 {
    padding: 40px;
}

.px-2 {
    padding-left: 8px;
    padding-right: 8px;
}
.px-3 {
    padding-left: 12px;
    padding-right: 12px;
}
.px-4 {
    padding-left: 16px;
    padding-right: 16px;
}
.px-5 {
    padding-left: 20px;
    padding-right: 20px;
}
.px-6 {
    padding-left: 24px;
    padding-right: 24px;
}

.py-1 {
    padding-top: 4px;
    padding-bottom: 4px;
}
.py-2 {
    padding-top: 8px;
    padding-bottom: 8px;
}
.py-3 {
    padding-top: 12px;
    padding-bottom: 12px;
}
.py-4 {
    padding-top: 16px;
    padding-bottom: 16px;
}
.py-8 {
    padding-top: 32px;
    padding-bottom: 32px;
}
.py-16 {
    padding-top: 64px;
    padding-bottom: 64px;
}
.py-20 {
    padding-top: 80px;
    padding-bottom: 80px;
}
.pt-3 {
    padding-top: 12px;
}
.pt-4 {
    padding-top: 16px;
}
.pr-4 {
    padding-right: 16px;
}
.pl-2 {
    padding-left: 8px;
}
.text-center {
    text-align: center;
}
.text-end {
    text-align: end;
}
.text-justify {
    text-align: justify;
}
.text-left {
    text-align: left;
}
.text-right {
    text-align: right;
}
.text-start {
    text-align: start;
}
.text-2xl {
    font-size: 24px;
    line-height: 32px;
}
.text-3xl {
    font-size: 30px;
    line-height: 36px;
}
.text-4xl {
    font-size: 36px;
    line-height: 40px;
}
.text-lg {
    font-size: 18px;
    line-height: 28px;
}
.text-sm {
    font-size: 14px;
    line-height: 20px;
}
.text-xl {
    font-size: 20px;
    line-height: 28px;
}
.text-xs {
    font-size: 12px;
    line-height: 16px;
}
.leading-none {
    line-height: 1;
}

.font-bold {
    font-weight: 700;
}
.font-medium {
    font-weight: 500;
}
.font-semibold {
    font-weight: 600;
}

/* Text wrapping */
.text-nowrap {
    white-space: nowrap;
}
.text-wrap {
    white-space: normal;
}
.break-normal {
    overflow-wrap: normal;
    word-break: normal;
}
.break-words {
    overflow-wrap: break-word;
}
.break-all {
    word-break: break-all;
}
.break-keep {
    word-break: keep-all;
}
.overflow-ellipsis {
    text-overflow: ellipsis;
}
.text-clip {
    text-overflow: clip;
}
.text-ellipsis {
    text-overflow: ellipsis;
}
.hyphens-auto {
    -webkit-hyphens: auto;
    hyphens: auto;
}
.hyphens-manual {
    -webkit-hyphens: manual;
    hyphens: manual;
}
.hyphens-none {
    -webkit-hyphens: none;
    hyphens: none;
}
.whitespace-break-spaces {
    white-space: break-spaces;
}
.whitespace-normal {
    white-space: normal;
}
.whitespace-nowrap {
    white-space: nowrap;
}
.whitespace-pre {
    white-space: pre;
}
.whitespace-pre-line {
    white-space: pre-line;
}
.whitespace-pre-wrap {
    white-space: pre-wrap;
}
.capitalize {
    text-transform: capitalize;
}
.lowercase {
    text-transform: lowercase;
}
.normal-case {
    text-transform: none;
}
.uppercase {
    text-transform: uppercase;
}
.italic {
    font-style: italic;
}
.not-italic {
    font-style: normal;
}
.font-stretch-condensed {
    font-stretch: condensed;
}
.font-stretch-expanded {
    font-stretch: expanded;
}
.font-stretch-extra-condensed {
    font-stretch: extra-condensed;
}
.font-stretch-extra-expanded {
    font-stretch: extra-expanded;
}
.font-stretch-normal {
    font-stretch: normal;
}
.font-stretch-semi-condensed {
    font-stretch: semi-condensed;
}
.font-stretch-semi-expanded {
    font-stretch: semi-expanded;
}
.font-stretch-ultra-condensed {
    font-stretch: ultra-condensed;
}
.font-stretch-ultra-expanded {
    font-stretch: ultra-expanded;
}
.normal-nums {
    font-variant-numeric: normal;
}
.line-through {
    text-decoration-line: line-through;
}
.no-underline {
    text-decoration-line: none;
}
.overline {
    text-decoration-line: overline;
}
.underline {
    text-decoration-line: underline;
}
.decoration-dashed {
    text-decoration-style: dashed;
}
.decoration-dotted {
    text-decoration-style: dotted;
}
.decoration-double {
    text-decoration-style: double;
}
.decoration-solid {
    text-decoration-style: solid;
}
.decoration-wavy {
    text-decoration-style: wavy;
}
.color-red-50 {
    color: rgba(255, 0, 0, 0.5);
}
.color-red-50-important {
    color: rgba(255, 0, 0, 0.5) !important;
}

.text-blue-400 {
    color: #60a5fa;
}
.text-blue-500 {
    color: #3b82f6;
}
.text-blue-600 {
    color: #2563eb;
}
.text-blue-700 {
    color: #1d4ed8;
}

.text-gray-400 {
    color: #9ca3af;
}
.text-gray-500 {
    color: #6b7280;
}
.text-gray-600 {
    color: #4b5563;
}
.text-gray-700 {
    color: #374151;
}
.text-gray-800 {
    color: #1f2937;
}
.text-gray-900 {
    color: #111827;
}

.text-green-500 {
    color: #22c55e;
}
.text-green-600 {
    color: #16a34a;
}

.text-indigo-100 {
    color: #e0e7ff;
}

.text-orange-500 {
    color: #f97316;
}

.text-pink-500 {
    color: #ec4899;
}

.text-purple-300 {
    color: #d8b4fe;
}

.text-red-500 {
    color: #ef4444;
}
.text-red-600 {
    color: #dc2626;
}

.text-white {
    color: #ffffff;
}
.text-yellow-500 {
    color: #eab308;
}
.opacity-0 {
    opacity: 0;
}
.underline-offset-auto {
    text-underline-offset: auto;
}
/* Placeholder color */
.placeholder-gray-400::placeholder {
    color: #9ca3af;
}
.shadow {
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
}
.shadow-sm {
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
}
.shadow-md {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
}
.shadow-lg {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
}
.shadow-xl {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}
/* Ring Effects */
.transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter, backdrop-filter;
    transition-timing-function: ease;
    transition-duration: 150ms;
}
.transition-all {
    transition-property: all;
    transition-timing-function: ease;
    transition-duration: 150ms;
}
.transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke;
    transition-timing-function: ease;
    transition-duration: 150ms;
}
.transition-opacity {
    transition-property: opacity;
    transition-timing-function: ease;
    transition-duration: 150ms;
}
.transition-shadow {
    transition-property: box-shadow;
    transition-timing-function: ease;
    transition-duration: 150ms;
}
.transition-transform {
    transition-property: transform;
    transition-timing-function: ease;
    transition-duration: 150ms;
}
.transition-none {
    transition-property: none;
}
.delay-50 {
    transition-delay: 50ms;
}
.duration-100 {
    transition-duration: 100ms;
}
.duration-300 {
    transition-duration: 300ms;
}
.ease-in {
    transition-timing-function: ease-in;
}
.ease-in-out {
    transition-timing-function: ease-in-out;
}
.ease-linear {
    transition-timing-function: linear;
}
.ease-out {
    transition-timing-function: ease-out;
}
.outline-dashed {
    outline-style: dashed;
}
.outline-dotted {
    outline-style: dotted;
}
.outline-double {
    outline-style: double;
}
.outline-none {
    outline-style: none;
}
.outline-solid {
    outline-style: solid;
}
.backface-hidden {
    backface-visibility: hidden;
}
.backface-visible {
    backface-visibility: visible;
}
.duration-initial {
    transition-duration: initial;
}
.ease-initial {
    transition-timing-function: initial;
}
.perspective-none {
    perspective: none;
}
.perspective-origin-bottom {
    perspective-origin: bottom;
}
.perspective-origin-bottom-left {
    perspective-origin: bottom left;
}
.perspective-origin-bottom-right {
    perspective-origin: bottom right;
}
.perspective-origin-center {
    perspective-origin: center;
}
.perspective-origin-left {
    perspective-origin: left;
}
.perspective-origin-right {
    perspective-origin: right;
}
.perspective-origin-top {
    perspective-origin: top;
}
.perspective-origin-top-left {
    perspective-origin: top left;
}
.perspective-origin-top-right {
    perspective-origin: top right;
}
.ring-inset {
    box-shadow: inset 0 0 0 1px currentColor;
}
.transform-3d {
    transform-style: preserve-3d;
}


/* navbar */
.navbar {
    position: fixed;
    top: 0;
    width: 100%;
    left: 0;
    background-color: var(--solobea-color);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 30px;
    z-index: 1000;
    box-shadow: 0 0 2px var(--grey-color-light);
}
.logo_item {
    display: flex;
    align-items: center;
    column-gap: 10px;
    font-size: 22px;
    font-weight: 500;
    color: var(--blue-color);
}
.navbar img {
    width: 35px;
    height: 35px;
    object-fit: cover;
    border-radius: 50%;
}
.search_bar {
    height: 47px;
    max-width: 430px;
    width: 100%;
}
.search_bar input {
    height: 100%;
    width: 100%;
    border-radius: 25px;
    font-size: 18px;
    outline: none;
    background-color: var(--white-color);
    color: var(--grey-color);
    border: 1px solid var(--grey-color-light);
    padding: 0 20px;
}
.navbar_content {
    display: flex;
    align-items: center;
    column-gap: 25px;
}
.navbar_content i {
    cursor: pointer;
    font-size: 20px;
    color: var(--grey-color);
}

/* sidebar */
.sidebar {
    background-color: var(--solobea-color);
    width: 260px;
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    padding: 80px 20px;
    z-index: 100;
    overflow-y: scroll;
    box-shadow: 0 0 1px var(--grey-color-light);
    transition: all 0.5s ease;
}
.sidebar.close {
    padding: 60px 0;
    width: 80px;
}
.sidebar::-webkit-scrollbar {
    display: none;
}
.menu_content {
    position: relative;
}
.menu_title {
    margin: 15px 0;
    padding: 0 20px;
    font-size: 18px;
}
.sidebar.close .menu_title {
    padding: 6px 30px;
}
.menu_title::before {
    color: var(--grey-color);
    white-space: nowrap;
}
.menu_dahsboard::before {
    content: "Dashboard";
}
.menu_editor::before {
    content: "Editor";
}
.menu_setting::before {
    content: "Setting";
}
.sidebar.close .menu_title::before {
    content: "";
    position: absolute;
    height: 2px;
    width: 18px;
    border-radius: 12px;
    background: var(--grey-color-light);
}
.menu_items {
    padding: 0;
    list-style: none;
}
.navlink_icon {
    position: relative;
    font-size: 22px;
    min-width: 50px;
    line-height: 40px;
    display: inline-block;
    text-align: center;
    border-radius: 6px;
}
.navlink_icon::before {
    content: "";
    position: absolute;
    height: 100%;
    width: calc(100% + 100px);
    left: -20px;
}
.navlink_icon:hover {
    background: var(--blue-color);
}
.sidebar .nav_link {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 4px 15px;
    border-radius: 8px;
    text-decoration: none;
    color: var(--grey-color);
    white-space: nowrap;
}
.sidebar.close .navlink {
    display: none;
}
.nav_link:hover {
    color: var(--white-color);
    background: var(--blue-color);
}
.sidebar.close .nav_link:hover {
    background: var(--white-color);
}
.submenu_item {
    cursor: pointer;
}
.submenu {
    display: none;
}
.submenu_item .arrow-left {
    position: absolute;
    right: 10px;
    display: inline-block;
    margin-right: auto;
}
.sidebar.close .submenu {
    display: none;
}
.show_submenu ~ .submenu {
    display: block;
}
.show_submenu .arrow-left {
    transform: rotate(90deg);
}
.submenu .sublink {
    padding: 15px 15px 15px 52px;
}
.main-content {
    background-color: var(--white-color);
    color: var(--grey-color);
    margin-left: 260px; /* same width as sidebar */
    padding: 90px 20px 20px; /* top padding to clear navbar */
    transition: all 0.5s ease;
}

/* Adjust when sidebar is collapsed */
.sidebar.close ~ .main-content {
    margin-left: 80px;
}
@media screen and (max-width: 768px) {
    #sidebarOpen {
        font-size: 25px;
        display: block;
        margin-right: 10px;
        cursor: pointer;
        color: var(--grey-color);
    }
    .sidebar{
        left: -100%;
    }
    .sidebar.mobile-open{
        left: 0;
    }
    .search_bar {
        display: none;
    }
    .main-content {
        margin-left: 0;
        padding-top: 90px;
    }
    .sidebar.close ~ .main-content {
        margin-left: 0;
    }
}