/* ==========================================================================
   Base Reset & Foundation Styles
   --------------------------------------------------------------------------
   Minimal reset with full viewport support for dashboard layout
   ========================================================================== */

/* Box sizing and text selection prevention for all elements */
*,
*::before,
*::after {
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    caret-color: transparent;
}

/* Reset margins and paddings */
html, body {
    margin: 0;
    padding: 0;
}

/* Full viewport foundation */
html {
    height: 100%;
    width: 100%;
    font-size: 16px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    scroll-behavior: smooth;
}

body {
    min-height: 100vh;
    width: 100%;
    display: flex;
    flex-direction: column;
    font-family: var(--font-body, 'Cormorant Garamond', Georgia, serif);
    color: var(--color-text-primary, #e8f0f2);
    line-height: 1.5;
    overflow-x: hidden;
}

/* Typography resets */
h1, h2, h3, h4, h5, h6 {
    margin: 0;
    font-weight: inherit;
    font-size: inherit;
}

p {
    margin: 0;
}

/* List resets */
ul, ol {
    margin: 0;
    padding: 0;
}

/* Link resets */
a {
    color: inherit;
    text-decoration: none;
}

/* Button resets */
button {
    font-family: inherit;
    font-size: inherit;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    color: inherit;
}

/* Input resets */
input, textarea, select {
    font-family: inherit;
    font-size: inherit;
}

/* Table resets */
table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* Image resets */
img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Focus visible for accessibility */
:focus-visible {
    outline: 2px solid rgba(0, 214, 137, 0.6);
    outline-offset: 2px;
}

/* Remove focus outline for mouse users */
:focus:not(:focus-visible) {
    outline: none;
}

/* Allow text selection and cursor in input fields */
input,
textarea,
select,
[contenteditable="true"],
[contenteditable=""] {
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
    user-select: text;
    caret-color: auto;
}

/* Hide text selection highlight globally */
::selection {
    background: transparent;
    color: inherit;
}

::-moz-selection {
    background: transparent;
    color: inherit;
}

/* Scrollbar styling for WebKit browsers */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 4px;
}

::-webkit-scrollbar-thumb {
    background: rgba(0, 214, 137, 0.3);
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 214, 137, 0.5);
}

/* Firefox scrollbar styling */
* {
    scrollbar-width: thin;
    scrollbar-color: rgba(0, 214, 137, 0.3) rgba(0, 0, 0, 0.2);
}

