/* ==========================================================
   Progetto Sentinel v2.0
   File: reset.css
   Versione RC1
   ========================================================== */

/* ==========================================================
   RESET GLOBALE
   ========================================================== */

*,
*::before,
*::after {

    margin: 0;

    padding: 0;

    box-sizing: border-box;

}

/* ==========================================================
   HTML
   ========================================================== */

html {

    font-size: 16px;

    scroll-behavior: smooth;

    -webkit-text-size-adjust: 100%;

}

/* ==========================================================
   BODY
   ========================================================== */

body {

    min-height: 100vh;

    font-family: var(--font-body);

    font-size: var(--font-size-base);

    line-height: var(--line-height-body);

    color: var(--text-primary);

    background: var(--bg-body);

    text-rendering: optimizeLegibility;

    -webkit-font-smoothing: antialiased;

    -moz-osx-font-smoothing: grayscale;

    overflow-x: hidden;

}

/* ==========================================================
   MEDIA
   ========================================================== */

img,
picture,
video,
canvas,
svg {

    display: block;

    max-width: 100%;

    height: auto;

}

/* ==========================================================
   FORM ELEMENTS
   ========================================================== */

input,
button,
textarea,
select {

    font: inherit;

    color: inherit;

    background: transparent;

    border: none;

    outline: none;

}

textarea {

    resize: vertical;

}

button {

    cursor: pointer;

    background: none;

}

button:disabled {

    cursor: default;

}

input::-ms-clear,
input::-ms-reveal {

    display: none;

}

/* ==========================================================
   LINKS
   ========================================================== */

a {

    color: inherit;

    text-decoration: none;

    transition: color var(--transition);

}

/* ==========================================================
   LISTE
   ========================================================== */

ul,
ol {

    list-style: none;

}

/* ==========================================================
   TABELLE
   ========================================================== */

table {

    border-collapse: collapse;

    border-spacing: 0;

    width: 100%;

}

/* ==========================================================
   QUOTES
   ========================================================== */

blockquote,
q {

    quotes: none;

}

blockquote::before,
blockquote::after,
q::before,
q::after {

    content: "";

}

/* ==========================================================
   HR
   ========================================================== */

hr {

    border: 0;

    border-top: 1px solid var(--border-color);

}
/* ==========================================================
   TIPOGRAFIA
   ========================================================== */

h1,
h2,
h3,
h4,
h5,
h6 {

    font-family: var(--font-heading);

    font-weight: var(--font-weight-bold);

    line-height: var(--line-height-heading);

    color: var(--text-primary);

}

p {

    margin: 0;

    color: var(--text-secondary);

}

small {

    font-size: var(--font-size-sm);

}

strong,
b {

    font-weight: var(--font-weight-bold);

}

em {

    font-style: italic;

}

/* ==========================================================
   ELEMENTI SEMANTICI HTML5
   ========================================================== */

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section {

    display: block;

}

/* ==========================================================
   FORM
   ========================================================== */

input,
textarea,
select {

    width: 100%;

}

input::placeholder,
textarea::placeholder {

    color: var(--text-muted);

    opacity: 1;

}

/* ==========================================================
   FOCUS ACCESSIBILE
   ========================================================== */

:focus-visible {

    outline: none;

    box-shadow: var(--focus-ring);

    border-radius: var(--radius-sm);

}

/* ==========================================================
   ELEMENTI NASCOSTI
   ========================================================== */

[hidden] {

    display: none !important;

}

/* ==========================================================
   SVG
   ========================================================== */

svg {

    fill: currentColor;

}

/* ==========================================================
   SELEZIONE TESTO
   ========================================================== */

::selection {

    background: var(--selection-bg);

    color: var(--selection-color);

}

/* ==========================================================
   SCROLLBAR (WebKit)
   ========================================================== */

::-webkit-scrollbar {

    width: 10px;

    height: 10px;

}

::-webkit-scrollbar-track {

    background: var(--bg-surface);

}

::-webkit-scrollbar-thumb {

    background: var(--bg-card-hover);

    border-radius: var(--radius-pill);

}

::-webkit-scrollbar-thumb:hover {

    background: var(--color-primary);

}

/* ==========================================================
   RIDUZIONE ANIMAZIONI
   ========================================================== */

@media (prefers-reduced-motion: reduce) {

    *,
    *::before,
    *::after {

        animation-duration: 0.01ms !important;

        animation-iteration-count: 1 !important;

        transition-duration: 0.01ms !important;

        scroll-behavior: auto !important;

    }

}

/* ==========================================================
   END OF FILE
   ========================================================== */