/*
Theme Name: Kaapi Utsava 2026
Theme URI: https://kaapi.oohms.in
Author: OOHMS Experiential Learning
Author URI: https://oohms.in
Description: Official luxury experiential WordPress theme for Kaapi Utsava 2026: From Cherry to Cup. Features a handcrafted Channapatna wooden toy 3D WebGL universe, 4 interactive coffee mini-games, an Explorer Passport with dynamic badge tracking and HTML5 certificate generation, comprehensive multi-audience registration systems, BIFW Kaapi Couture showcase, Shakti Awards nominations, and built-in event lead CRM.
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: kaapi-utsava
Tags: full-site-editing, custom-background, custom-colors, custom-header, custom-menu, featured-images, flexible-header, microformats, post-formats, theme-options, translation-ready
*/

:root {
  --color-obsidian: #10120F;
  --color-forest: #173A2B;
  --color-forest-dark: #0D2219;
  --color-forest-light: #235540;
  --color-coffee: #5A3218;
  --color-coffee-dark: #381E0E;
  --color-coffee-light: #7D4724;
  --color-gold: #C89D3C;
  --color-gold-light: #E2C06B;
  --color-gold-dark: #9A7220;
  --color-gold-accent: #B78C49;
  --color-ivory: #F7F3EA;
  --color-cream: #FFF8F0;
  --color-cherry: #9F2828;
  --color-sage: #7FA27A;
  --color-sand: #F5E9D2;
}

::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--color-obsidian); }
::-webkit-scrollbar-thumb { background: var(--color-forest-light); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--color-gold); }

.gold-border-glow {
  border: 1px solid rgba(200, 157, 60, 0.35);
  box-shadow: 0 0 20px rgba(200, 157, 60, 0.12);
  transition: all 0.3s ease;
}
.gold-border-glow:hover {
  border-color: rgba(200, 157, 60, 0.65);
  box-shadow: 0 0 30px rgba(200, 157, 60, 0.22);
}

.lacquer-surface {
  background: linear-gradient(135deg, rgba(255,255,255,0.06) 0%, rgba(255,255,255,0) 60%),
              radial-gradient(ellipse at top, rgba(200, 157, 60, 0.15), transparent 70%);
  backdrop-filter: blur(12px);
}

.foil-text {
  background: linear-gradient(135deg, #F5E9D2 0%, #C89D3C 50%, #E2C06B 80%, #9A7220 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.stamp-seal {
  position: relative;
}
.stamp-seal::after {
  content: '';
  position: absolute;
  inset: -4px;
  border: 2px dashed rgba(200, 157, 60, 0.4);
  border-radius: 9999px;
  animation: spinSlow 30s linear infinite;
}
@keyframes spinSlow {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes subtlePulse {
  0%, 100% { transform: scale(1); opacity: 0.95; }
  50% { transform: scale(1.05); opacity: 1; }
}
.animate-pulse-subtle {
  animation: subtlePulse 3s ease-in-out infinite;
}

@keyframes steamFloat {
  0% { transform: translateY(0) scaleX(1); opacity: 0.8; }
  50% { transform: translateY(-12px) scaleX(1.1); opacity: 0.4; }
  100% { transform: translateY(-24px) scaleX(1.3); opacity: 0; }
}
.steam-particle {
  animation: steamFloat 2.2s infinite ease-out;
}

input[type=range].roast-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  height: 24px;
  width: 24px;
  border-radius: 50%;
  background: #C89D3C;
  cursor: pointer;
  border: 2px solid #FFF8F0;
  box-shadow: 0 0 10px rgba(200, 157, 60, 0.8);
}

.alignwide { max-width: 1200px; margin-left: auto; margin-right: auto; }
.alignfull { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
.aligncenter { text-align: center; margin: 0 auto; }
.alignleft { float: left; margin: 0 1.5rem 1.5rem 0; }
.alignright { float: right; margin: 0 0 1.5rem 1.5rem; }
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}
