/*
 * Localized Tailwind CSS — replaces the cdn.tailwindcss.com Play CDN.
 *
 * The Play CDN prints a console warning ("should not be used in production")
 * and pulls ~3MB of JS that recompiles utilities in the browser on every page
 * load. This project uses only a base reset + a tiny, fixed set of utility
 * classes and NO Tailwind variants (dark:/hover:/responsive are all done with
 * hand-written CSS in templates/base.html). So instead of bolting a Node +
 * Tailwind build step onto a Go app, the equivalent output is checked in here.
 *
 * Two parts:
 *   1. Preflight — verbatim Tailwind v3 base reset, identical to what the CDN
 *      injected, so removing the CDN does not change rendering (global
 *      border-box, zeroed heading/list/paragraph margins, unstyled lists, etc).
 *   2. Utilities — only the classes actually referenced in templates/. If you
 *      add a new Tailwind class in a template, add its rule here too.
 *
 * grep helper to re-audit usage:
 *   grep -rhoE 'class="[^"]*"' templates/ | tr ' ' '\n' | sort -u
 */

/* ============================ 1. Preflight ============================ */
/*! tailwindcss v3.4 | MIT License | https://tailwindcss.com */
*,
::before,
::after { box-sizing: border-box; border-width: 0; border-style: solid; border-color: currentColor; }
::before,
::after { --tw-content: ''; }
html,
:host { line-height: 1.5; -webkit-text-size-adjust: 100%; -moz-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";
  -webkit-tap-highlight-color: transparent; }
body { margin: 0; line-height: inherit; }
hr { height: 0; color: inherit; border-top-width: 1px; }
abbr:where([title]) { 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-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::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; }

/* ============================ 2. Utilities ============================ */
/* Only the Tailwind classes referenced in templates/. Keep this list in sync. */
.flex            { display: flex; }
.flex-col        { flex-direction: column; }
.flex-1          { flex: 1 1 0%; }
.items-center    { align-items: center; }
.justify-center  { justify-content: center; }
.gap-2           { gap: 0.5rem; }
.mb-2            { margin-bottom: 0.5rem; }
.mb-3            { margin-bottom: 0.75rem; }
.text-xs         { font-size: 0.75rem; line-height: 1rem; }
.text-\[11px\]   { font-size: 11px; }
.text-blue-400   { color: #60a5fa; }
.whitespace-nowrap { white-space: nowrap; }
.w-\[120px\]     { width: 120px; }
.w-\[130px\]     { width: 130px; }
.w-\[140px\]     { width: 140px; }
.w-\[180px\]     { width: 180px; }
/* NOTE: `text-text2` is also present in templates but the old CDN never
 * generated it (no `text2` color was configured), so it was a no-op there too.
 * Left undefined here to preserve identical rendering — replace those usages
 * with a real class (e.g. the existing `.text-muted`) when convenient. */
