:root{--font-heading: "Cinzel", serif;--font-body: "Lato", sans-serif;--bg-color: #f0f4f8;--text-main: #2c3e50;--text-muted: #607d8b;--accent-color: #d4af37;--glass-bg: rgba(255, 255, 255, .7);--glass-border: 1px solid rgba(255, 255, 255, .8);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .1);--candle-w: 40px;--candle-h: 120px}*{box-sizing:border-box}body{margin:0;padding:0;background-color:var(--bg-color);background-image:radial-gradient(at 0% 0%,rgba(212,175,55,.1) 0px,transparent 50%),radial-gradient(at 100% 0%,rgba(212,175,55,.05) 0px,transparent 50%);background-attachment:fixed;color:var(--text-main);font-family:var(--font-body);display:flex;justify-content:center;min-height:100vh}#root{width:100%;max-width:1200px;padding:2rem;box-sizing:border-box;display:flex;flex-direction:column}h1,h2,h3{font-family:var(--font-heading);letter-spacing:2px}@keyframes flicker{0%,to{transform:scale(1);opacity:.9}25%{transform:scale(1.1) skewY(2deg);opacity:.8}50%{transform:scale(.9) skewY(-1deg);opacity:.7}75%{transform:scale(1.05) skewY(3deg);opacity:.85}}@keyframes glow{0%,to{box-shadow:0 0 20px 5px #ffd70066}50%{box-shadow:0 0 30px 10px #ffa50080}}.primary-btn{background:linear-gradient(135deg,#d4af37,#f7ef8a);border:none;padding:12px 32px;border-radius:50px;color:#333;font-family:var(--font-heading);font-weight:700;font-size:1rem;letter-spacing:1px;cursor:pointer;box-shadow:0 4px 15px #d4af374d;transition:all .3s ease;min-height:44px}.primary-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #d4af3780}.pagination{margin-top:3rem;display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.page-btn{background:var(--glass-bg);border:var(--glass-border);color:var(--text-main);padding:8px 16px;border-radius:8px;cursor:pointer;transition:all .3s ease;min-height:44px}.page-btn:hover{background:#fff;box-shadow:var(--glass-shadow)}.page-btn.active{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.page-btn:disabled{opacity:.5;cursor:not-allowed}.candle-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:40px 20px;padding:20px 0}.empty-state{text-align:center;margin-top:50px;font-style:italic;color:var(--text-muted)}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#fffc;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease}.modal-content{background:#fff;border:1px solid rgba(0,0,0,.05);padding:2.5rem;border-radius:24px;width:90%;max-width:500px;box-shadow:0 20px 50px #0000001a;position:relative;animation:slideUp .3s ease;color:var(--text-main)}.modal-close{position:absolute;top:15px;right:20px;background:none;border:none;font-size:2rem;color:var(--text-muted);cursor:pointer;line-height:1}.selection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:10px;margin-top:10px}.selection-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:15px 5px;text-align:center;cursor:pointer;transition:all .2s;font-size:.9rem;font-weight:500;color:var(--text-muted)}.selection-card:hover{border-color:var(--accent-color);background:#fff}.selection-card.selected{background:#fff;border-color:var(--accent-color);color:var(--accent-color);box-shadow:0 4px 12px #d4af3726}.color-grid{display:flex;justify-content:center;gap:15px;margin-top:10px}.color-option{width:36px;height:36px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:all .2s;box-shadow:0 2px 5px #0000001a}.color-option.selected{transform:scale(1.2);border-color:var(--accent-color);box-shadow:0 0 15px #d4af374d}.info-box{background:#fff;border:1px solid #eef2f5;padding:20px;border-radius:20px;margin-bottom:2rem;box-shadow:0 4px 20px #00000008}input,textarea{width:100%;padding:12px;background:#f8f9fa;border:1px solid #e9ecef;border-radius:10px;color:var(--text-main);font-family:var(--font-body);font-size:1rem;transition:all .2s;box-sizing:border-box}input:focus,textarea:focus{outline:none;background:#fff;border-color:var(--accent-color);box-shadow:0 0 0 3px #d4af371a}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:600px){#root{padding:1rem}h1{font-size:2rem}.modal-content{position:fixed;bottom:0;left:0;right:0;width:100%;margin:0;border-radius:20px 20px 0 0;padding:.8rem 1.2rem 2rem;animation:slideUpBottom .3s ease;max-height:75vh;overflow-y:auto;z-index:10000}}@keyframes slideUpBottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}
