/* ==========================================================================
   SRKVAULT - Tailwind-compatible base reset + core utilities
   NOTE: This is a MINIMAL replacement for @tailwind directives since this
   plugin ships raw class names and does not run the Tailwind JIT compiler.
   All real styling lives in style.css. This file provides:
     1. box-sizing reset (Preflight-equivalent)
     2. <html>/<body> default resets consistent with Tailwind preflight
     3. The tiny handful of utility classes that our explicit components
        actually depend on (display:flex, display:grid, spacing helpers).
   If you want full Tailwind utilities, load https://cdn.tailwindcss.com
   via script in a child theme. This plugin does not require them.
   ========================================================================== */

*, ::before, ::after { box-sizing: border-box; border-width: 0; border-style: solid; border-color: #e5e7eb; }
html { line-height: 1.5; -webkit-text-size-adjust: 100%; tab-size: 4; font-family: ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif; }
body { margin: 0; line-height: inherit; }
hr { height: 0; color: inherit; border-top-width: 1px; }
abbr[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-size: 1em; }
small { font-size: 80%; }
sub,sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sub { bottom: -0.25em; } sup { top: -0.5em; }
table { text-indent: 0; border-color: inherit; border-collapse: collapse; }
button,input,optgroup,select,textarea { font-family: inherit; font-size: 100%; line-height: inherit; color: inherit; margin: 0; padding: 0; }
button,select { text-transform: none; }
button,[type='button'],[type='reset'],[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; }
textarea { resize: vertical; }
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] { display: none; }

/* ------- Tailwind utility classes actually used in app.js render code ------ */
.flex     { display: flex; }
.flex-col { flex-direction: column; }
.grid     { display: grid; }
.block    { display: block; }
.hidden   { display: none; }
.inline-block { display: inline-block; }
.inline   { display: inline; }
.w-full   { width: 100%; }
.min-w-0  { min-width: 0; }
.items-center { align-items: center; }
.items-start  { align-items: flex-start; }
.items-end    { align-items: flex-end; }
.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; }
.self-center      { align-self: center; }
.flex-1           { flex: 1 1 0%; }
.flex-auto        { flex: 1 1 auto; }
.flex-initial     { flex: 0 1 auto; }
.flex-none        { flex: none; }
.flex-wrap        { flex-wrap: wrap; }
.flex-nowrap      { flex-wrap: nowrap; }
.gap-0 { gap: 0; }      .gap-1 { gap: 0.25rem; }   .gap-2 { gap: 0.5rem; }
.gap-3 { gap: 0.75rem; } .gap-4 { gap: 1rem; }      .gap-5 { gap: 1.25rem; }
.gap-6 { gap: 1.5rem; }  .gap-8 { gap: 2rem; }      .gap-10{ gap: 2.5rem; }
.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)); }
.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; }
.p-0 { padding: 0; }        .p-1 { padding: 0.25rem; }  .p-2 { padding: 0.5rem; }
.p-3 { padding: 0.75rem; }   .p-4 { padding: 1rem; }     .p-5 { padding: 1.25rem; }
.p-6 { padding: 1.5rem; }    .p-8 { padding: 2rem; }
.px-1{ padding-left:0.25rem; padding-right:0.25rem; }
.px-2{ padding-left:0.5rem;  padding-right:0.5rem; }
.px-3{ padding-left:0.75rem; padding-right:0.75rem; }
.px-4{ padding-left:1rem;    padding-right:1rem; }
.py-1{ padding-top:0.25rem;  padding-bottom:0.25rem; }
.py-2{ padding-top:0.5rem;   padding-bottom:0.5rem; }
.py-3{ padding-top:0.75rem;  padding-bottom:0.75rem; }
.py-4{ padding-top:1rem;     padding-bottom:1rem; }
.pt-1{ padding-top:0.25rem; } .pt-2{ padding-top:0.5rem; } .pt-4{ padding-top:1rem; }
.pb-1{ padding-bottom:0.25rem; } .pb-2{ padding-bottom:0.5rem; } .pb-4{ padding-bottom:1rem; }
.pl-2{ padding-left:0.5rem; } .pr-2{ padding-right:0.5rem; }
.m-0 { margin: 0; }
.mx-auto { margin-left: auto; margin-right: auto; }
.ml-auto { margin-left: auto; } .mr-auto { margin-right: auto; }
.mt-0 { margin-top: 0; }      .mt-1 { margin-top: 0.25rem; } .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; }
.mb-0 { margin-bottom: 0; }      .mb-1 { margin-bottom: 0.25rem; } .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-1 { margin-left: 0.25rem; } .ml-2 { margin-left: 0.5rem; } .ml-4 { margin-left: 1rem; }
.mr-1 { margin-right: 0.25rem;} .mr-2 { margin-right: 0.5rem;} .mr-4 { margin-right: 1rem;}
.my-1 { margin-top: 0.25rem; margin-bottom: 0.25rem; }
.my-2 { margin-top: 0.5rem;  margin-bottom: 0.5rem; }
.my-3 { margin-top: 0.75rem; margin-bottom: 0.75rem; }
.mx-1 { margin-left: 0.25rem; margin-right: 0.25rem; }
.mx-2 { margin-left: 0.5rem;  margin-right: 0.5rem; }
.overflow-hidden  { overflow: hidden; }
.overflow-x-auto  { overflow-x: auto; }
.overflow-y-auto  { overflow-y: auto; }
.overflow-auto    { overflow: auto; }
.text-left    { text-align: left; }
.text-center  { text-align: center; }
.text-right   { text-align: right; }
.uppercase    { text-transform: uppercase; }
.lowercase    { text-transform: lowercase; }
.capitalize   { text-transform: capitalize; }
.underline    { text-decoration: underline; }
.no-underline { text-decoration: none; }
.font-normal  { font-weight: 400; }
.font-medium  { font-weight: 500; }
.font-semibold{ font-weight: 600; }
.font-bold    { font-weight: 700; }
.font-extrabold { font-weight: 800; }
.font-black   { font-weight: 900; }
.text-xs      { font-size: 0.75rem; line-height: 1rem; }
.text-sm      { font-size: 0.875rem; line-height: 1.25rem; }
.text-base    { font-size: 1rem; line-height: 1.5rem; }
.text-lg      { font-size: 1.125rem; line-height: 1.75rem; }
.text-xl      { font-size: 1.25rem; line-height: 1.75rem; }
.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; }
.leading-none { line-height: 1; }
.leading-tight{ line-height: 1.25; }
.leading-snug { line-height: 1.375; }
.leading-normal { line-height: 1.5; }
.truncate     { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.whitespace-nowrap { white-space: nowrap; }
.break-words  { overflow-wrap: break-word; }
.rounded-none { border-radius: 0; }
.rounded-sm   { border-radius: 0.125rem; }
.rounded      { border-radius: 0.25rem; }
.rounded-md   { border-radius: 0.375rem; }
.rounded-lg   { border-radius: 0.5rem; }
.rounded-xl   { border-radius: 0.75rem; }
.rounded-2xl  { border-radius: 1rem; }
.rounded-3xl  { border-radius: 1.5rem; }
.rounded-full { border-radius: 9999px; }
.rounded-t-lg { border-top-left-radius: 0.5rem; border-top-right-radius: 0.5rem; }
.rounded-b-lg { border-bottom-left-radius: 0.5rem; border-bottom-right-radius: 0.5rem; }
.border       { border-width: 1px; }
.border-0     { border-width: 0; }
.border-2     { border-width: 2px; }
.border-t     { border-top-width: 1px; }
.border-b     { border-bottom-width: 1px; }
.border-l     { border-left-width: 1px; }
.border-r     { border-right-width: 1px; }
.shadow-none  { box-shadow: none; }
.shadow-sm    { box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); }
.shadow       { box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); }
.shadow-md    { box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1); }
.shadow-lg    { box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); }
.shadow-xl    { box-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1); }
.shadow-2xl   { box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25); }
.relative     { position: relative; }
.absolute     { position: absolute; }
.fixed        { position: fixed; }
.sticky       { position: sticky; }
.static       { position: static; }
.inset-0      { top: 0; right: 0; bottom: 0; left: 0; }
.top-0        { top: 0; } .top-1 { top: 0.25rem; } .top-2 { top: 0.5rem; } .top-4 { top: 1rem; }
.bottom-0     { bottom: 0; } .bottom-2 { bottom: 0.5rem; } .bottom-4 { bottom: 1rem; }
.left-0       { left: 0; } .left-2 { left: 0.5rem; } .left-4 { left: 1rem; }
.right-0      { right: 0; } .right-2 { right: 0.5rem; } .right-4 { right: 1rem; }
.z-0{ z-index: 0; } .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; }
.opacity-0    { opacity: 0; }
.opacity-25   { opacity: 0.25; }
.opacity-50   { opacity: 0.5; }
.opacity-75   { opacity: 0.75; }
.opacity-100  { opacity: 1; }
.pointer-events-none { pointer-events: none; }
.pointer-events-auto { pointer-events: auto; }
.select-none  { user-select: none; }
.cursor-pointer { cursor: pointer; }
.cursor-default{ cursor: default; }
.cursor-not-allowed { cursor: not-allowed; }
.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-all { transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.duration-75  { transition-duration: 75ms; }
.duration-100 { transition-duration: 100ms; }
.duration-150 { transition-duration: 150ms; }
.duration-200 { transition-duration: 200ms; }
.duration-300 { transition-duration: 300ms; }
.duration-500 { transition-duration: 500ms; }
.duration-700 { transition-duration: 700ms; }
.duration-1000{ transition-duration: 1000ms; }
