/* Shared form identity: storefront, checkout, authentication and administration. */
:root { --makagui-field-bg: #192b24; --makagui-field-border: #577366; --makagui-green: #72d88b; }
body :is(input:not([type]), input[type="text"], input[type="email"], input[type="password"], input[type="search"], input[type="tel"], input[type="url"], input[type="number"], input[type="date"], input[type="datetime-local"], input[type="time"], input[type="month"], input[type="week"], input[type="file"], select, textarea) {
    background-color: var(--makagui-field-bg) !important;
    color: #f2faf5 !important;
    border: 1px solid var(--makagui-field-border);
    border-radius: 8px;
    min-height: 44px;
    font: inherit;
    caret-color: var(--makagui-green);
    color-scheme: dark;
    transition: border-color .15s, box-shadow .15s;
}
body :is(input, textarea)::placeholder { color: #b3c8bb !important; opacity: 1; }
body :is(input, select, textarea):focus-visible {
    outline: 2px solid var(--makagui-green);
    outline-offset: 2px;
    border-color: var(--makagui-green) !important;
    box-shadow: 0 0 0 3px rgb(114 216 139 / 16%) !important;
}
body :is(input, select, textarea):disabled { opacity: .6; cursor: not-allowed; }
body :is(input, textarea)[readonly] { border-style: dashed; }
body :is(input, select, textarea):is(.is-invalid, [aria-invalid="true"]) { border-color: #ff9da7 !important; }
body select option { background: #192b24; color: #f2faf5; }
body .form-select {
    --bs-form-select-bg-img: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='12' viewBox='0 0 16 12'%3E%3Cpath fill='none' stroke='%2372d88b' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 3 6 6 6-6'/%3E%3C/svg%3E");
}
body input:is([type="checkbox"], [type="radio"], [type="range"]) { accent-color: var(--makagui-green); }
body .form-check-input:checked { background-color: #27814a; border-color: var(--makagui-green); }
body input::file-selector-button { background: #28573d; color: #f2faf5; border: 0; padding: 10px 14px; margin-right: 12px; }
body input:-webkit-autofill { -webkit-text-fill-color: #f2faf5; -webkit-box-shadow: 0 0 0 1000px #192b24 inset; }

/* Keep all four filters on one row wherever the panel has desktop width. */
.makagui-filter-bar { display: grid; grid-template-columns: minmax(0, 1fr) minmax(150px, 210px) auto auto; gap: 10px; align-items: center; }
.makagui-filter-bar .filter-search { min-width: 0; }
.makagui-filter-bar .search-box { max-width: none; width: 100%; }
.makagui-filter-bar .form-select { width: 100%; min-width: 0; }
.makagui-filter-bar .btn-outline { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; white-space: nowrap; }
@media (max-width: 767.98px) {
    .makagui-filter-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .makagui-filter-bar .filter-search { grid-column: 1 / -1; }
    .makagui-filter-bar .form-select { grid-column: 1 / -1; }
}
@media (prefers-reduced-motion: reduce) { body :is(input, select, textarea) { transition: none; } }
