/* Attur v8.14: consistent, readable shop and admin finishing layer. */
:root { --review-focus:#1f65c7; }
html { scroll-padding-top:90px; }
body { -webkit-font-smoothing:antialiased; }
[hidden] { display:none!important; }
:where(button,a,input,select,textarea):focus-visible { outline:3px solid var(--review-focus);outline-offset:3px; }
button:disabled { cursor:wait;opacity:.6; }
.skip-link { position:fixed;left:16px;top:-100px;z-index:10000;padding:12px 18px;border-radius:10px;background:#fff;color:#192839;box-shadow:0 5px 20px #0003; }
.skip-link:focus { top:12px; }
input[type="number"],.summary-lines b,.cart-line-price,.stat-value { font-variant-numeric:tabular-nums; }
.page-hero-compact h1 { max-width:24ch;line-height:1.22;letter-spacing:-.025em; }
.page-hero-compact p { max-width:65ch;line-height:1.7; }
.checkout-card,.cart-items-card,.order-summary-card { border-radius:18px;box-shadow:0 8px 24px rgba(65,40,25,.045); }
.cart-item-pro { gap:16px; }
.cart-item-copy { min-width:0; }
.cart-item-copy h3 { overflow-wrap:anywhere;line-height:1.5; }
.cart-item-qty .qty { min-width:42px;min-height:42px; }
.cart-item-qty input { min-width:38px;text-align:center;font-variant-numeric:tabular-nums; }
.checkout-card-head h2 { line-height:1.45; }
.checkout-card label { display:block;margin-bottom:7px;line-height:1.6; }
.checkout-card :is(input,select,textarea) { font-size:15px; }
.order-summary-card .summary-lines p { gap:12px;align-items:baseline; }
.summary-note,.field-help { line-height:1.65; }
.admin-body { --admin-bg:#f4f6f9;--admin-border:#e1e6ee;--admin-text:#202a39;--admin-muted:#626f80; }
.admin-body .admin-main { padding:24px 28px!important; }
.admin-body .admin-topbar { box-shadow:0 1px 4px rgba(30,40,55,.04)!important; }
.admin-body .admin-current-page h2 { font-size:20px!important;line-height:1.3!important; }
.admin-body .admin-nav-v8 a,.admin-body .admin-nav-v8 a span { font-size:13px!important; }
.admin-body .admin-nav-v8 a { min-height:44px!important; }
.admin-body .admin-nav-label { font-size:10px!important; }
.admin-body .admin-page-head { gap:16px;align-items:center; }
.admin-body .admin-page-head h1 { font-size:26px;line-height:1.3;letter-spacing:-.025em; }
.admin-body .admin-page-head p { font-size:13px;line-height:1.65;color:var(--admin-muted); }
.admin-body .admin-actions { display:flex;gap:8px;flex-wrap:wrap; }
.admin-body :is(.admin-card,.admin-panel,.setting-section-v5) { border-color:var(--admin-border);box-shadow:0 4px 16px rgba(32,42,57,.035); }
.admin-body .setting-title-v5 h3 { font-size:17px;line-height:1.4; }
.admin-body .setting-title-v5 p { line-height:1.65; }
.admin-body .admin-btn { min-height:40px;border-radius:10px;line-height:1.4; }
.admin-body .table-wrap,.admin-body .inline-product-editor-v811 { overflow-x:auto;overscroll-behavior-x:contain; }
.admin-body :is(.table-wrap,.admin-table-wrap) table { font-size:13px; }
.admin-body :is(.table-wrap,.admin-table-wrap) th { padding:12px;font-size:11px;letter-spacing:.02em;background:#f5f7fa; }
.admin-body :is(.table-wrap,.admin-table-wrap) td { padding:12px;line-height:1.5;vertical-align:middle; }
.admin-body :is(.table-wrap,.admin-table-wrap) tbody tr:hover { background:#fff9f3; }
.admin-body .admin-alert { line-height:1.65;border-radius:12px;padding:14px 16px; }
.admin-body .switch-row { gap:12px;min-height:48px; }
.admin-body .switch-row small { line-height:1.6; }
.admin-body .settings-tabs-v8131 { scrollbar-width:thin; }
@media(max-width:900px) {
 .admin-body .admin-main { padding:18px!important; }
 .admin-body .admin-sidebar { max-width:min(310px,88vw);height:100dvh!important; }
 .admin-body .admin-nav-v8 a,.admin-body .admin-nav-v8 a span { font-size:14px!important; }
 .admin-body .admin-topbar { padding:0 14px!important;gap:8px!important; }
 .admin-body .admin-current-page h2 { font-size:17px!important; }
 .admin-body .admin-page-head { align-items:flex-start;flex-wrap:wrap; }
 .admin-body .admin-page-head h1 { font-size:23px; }
 .admin-body :is(.admin-btn,.btn) { min-height:42px; }
 .admin-body :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea) { font-size:16px!important; }
 .admin-body .bill-customer-actions-v85 button { min-height:38px!important;height:auto!important;font-size:11px!important; }
 .admin-body .bill-customer-contact-v86 span { font-size:12px!important; }
}
@media(max-width:600px) {
 .page-hero-compact h1 { font-size:clamp(24px,6.8vw,32px);max-width:none; }
 .page-hero-compact p { font-size:14px; }
 .checkout-card,.order-summary-card { padding:18px; }
 .checkout-card :is(input,select,textarea) { font-size:16px; }
 .cart-item-pro { gap:10px; }
 .cart-item-copy h3 { font-size:15px; }
 .cart-line-price { white-space:nowrap; }
 .checkout-progress { flex-wrap:wrap;gap:8px; }
 .admin-body .admin-main { padding:14px!important; }
 .admin-body .admin-current-page small { letter-spacing:.4px!important;font-size:8px!important; }
 .admin-body .admin-current-page h2 { max-width:43vw;font-size:16px!important; }
 .admin-body .admin-user { display:none!important; }
 .admin-body .admin-topbar-left,.admin-body .admin-topbar-right { gap:7px!important; }
 .admin-body .admin-actions { width:100%; }
 .admin-body .admin-actions .admin-btn { flex:1 1 auto;justify-content:center; }
 .admin-body .admin-page-head h1 { font-size:22px; }
 .admin-body .setting-section-v5 { padding:16px; }
}
@media(prefers-reduced-motion:reduce) {
 *,*::before,*::after { animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important; }
}
/* Install controls share the same navigation and respect mobile safe areas. */
.pwa-install-button { display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:9px 12px;border:1px solid #ebc9ad;border-radius:11px;background:#fff7ee;color:#863604;font:inherit;font-size:12px;font-weight:750;white-space:nowrap;cursor:pointer; }
.pwa-install-button:hover { background:#ffeedb; }
.pwa-install-button .ui-icon { width:18px;height:18px; }
.pwa-mobile-install { display:none; }
.pwa-install-dialog { position:fixed;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:28px;border:1px solid #e7dcd3;border-radius:22px;background:#fff;color:#28201c;text-align:center;box-shadow:0 24px 80px #0003; }
.pwa-install-dialog::backdrop { background:rgba(25,21,18,.58);backdrop-filter:blur(3px); }
.pwa-install-dialog h2 { font-size:22px;line-height:1.5;margin:18px 0 12px; }
.pwa-install-dialog p { font-size:15px;line-height:1.8; }
.pwa-install-dialog .pwa-help-note { font-size:13px;color:#6c6762; }
.pwa-dialog-close { position:absolute;top:10px;right:10px;width:38px;height:38px;border:0;border-radius:50%;background:#f4f4f4;font-size:24px;cursor:pointer; }
@media(max-width:900px) {
 .pwa-mobile-install { display:inline-flex;margin-left:auto;min-height:40px; }
 .pwa-mobile-install span { font-size:11px; }
 .admin-topbar .pwa-install-button { width:38px;padding:8px;min-height:38px; }
 .admin-topbar .pwa-install-button span { display:none; }
 .mobile-bottom-nav { padding-bottom:env(safe-area-inset-bottom,0px); }
 .site-header,.admin-topbar { padding-top:env(safe-area-inset-top,0px); }
}
@media(display-mode:standalone) {
 [data-app-install] { display:none!important; }
 .admin-body .admin-sidebar { padding-top:max(14px,env(safe-area-inset-top))!important; }
}
@media print { .pwa-install-button,.pwa-install-dialog { display:none!important; } }
