/*
Theme Name: Newbird Custom Theme
Theme URI: https://newbird.co.jp
Author: Antigravity (Advanced Agentic Coding Team)
Description: Newbird BtoB 鳥害対策製品 総合ECサイト専用のオリジナルテーマです。
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: newbird-theme
*/

/* ==========================================================================
   NEWBIRD B2B CUSTOM PROTOTYPE UNIQUE GLOBAL STYLES
   ========================================================================== */

:root {
	--theme-primary-color: #32cd32;
	--login-btn-color: #32cd32;
	--category-btn-color: #32cd32;
}

html {
	scroll-behavior: smooth;
}

body {
	background: #fcf8f9;
	color: #4D4D4D;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	font-feature-settings: "palt" 1;
}

/* Base button and link micro-interactions */
button, a, input, select, .card-hover {
	transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .2s ease, transform .2s ease, opacity .18s ease;
}

/* Card hover scaling micro-animations */
.card-hover:hover {
	transform: translateY(-3px);
}

/* Custom slant element (斜線クリップパス) */
.slant-bottom {
	clip-path: polygon(0 0, 100% 0, 100% calc(100% - 15px), 0 100%);
}

@media (min-width: 640px) {
	.slant-bottom {
		clip-path: polygon(0 0, 100% 0, 100% calc(100% - 30px), 0 100%);
	}
}

/* Tag clips (タグの端をななめにカットする) */
.clip-tag {
	clip-path: polygon(0 0, 100% 0, calc(100% - 7px) 100%, 0 100%);
}

/* Striped ribbon background */
.ribbon {
	background: repeating-linear-gradient(135deg, var(--theme-primary-color) 0 14px, var(--theme-primary-color) 14px 28px);
	filter: brightness(0.95);
}

/* Diagonal hatched background (斜線ハッチング装飾) */
.hatch {
	background-image: repeating-linear-gradient(135deg, rgba(47, 148, 64, .09) 0 2px, transparent 2px 9px);
}

/* Premium scrollbar styling */
::-webkit-scrollbar {
	height: 8px;
	width: 8px;
}
::-webkit-scrollbar-thumb {
	background: #cfd6d2;
	border-radius: 8px;
}
::-webkit-scrollbar-track {
	background: transparent;
}

/* Accessibility focus indicator ring */
.focusable:focus-visible {
	outline: 2px solid var(--theme-primary-color);
	outline-offset: 2px;
}

/* Respect user's system animation preferences */
@media (prefers-reduced-motion: reduce) {
	* {
		transition: none !important;
		animation: none !important;
	}
}

/* Fixes for overlapping UI */
[x-cloak] {
	display: none !important;
}

/* Category grid and item styles */
.eyebrow-tag {
	position: relative;
	padding-left: 0 !important;
}
.eyebrow-tag::before {
	display: none !important;
}
