@import "https://fonts.googleapis.com/css2?family=Tiro+Tamil:ital@0;1&family=Cormorant+Garamond:ital,wght@0,300;0,400;1,300;1,400&family=Cinzel:wght@400;500&display=swap";:root{--gold:#c9a84c;--gold-light:#e8c97a;--deep:#0f0a05;--ink:#1a1008;--parchment:#f5ead8;--parchment-dark:#e8d4b0;--rust:#8b3a1a;--terracotta:#b05030;--cream:#fdf6e8;--shadow:#00000080}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--deep);color:var(--parchment);min-height:100vh;font-family:Cormorant Garamond,serif;position:relative;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:100;opacity:.4;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");position:fixed;inset:0}body:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(#c9a84c0f 0%,#b050300a 40%,#0000 70%);border-radius:50%;width:700px;height:700px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.page-wrapper{z-index:1;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:40px 20px;display:flex;position:relative}header{text-align:center;margin-bottom:50px;position:relative}.tamil-title{color:var(--gold);letter-spacing:.04em;text-shadow:0 0 40px #c9a84c4d;font-family:Tiro Tamil,serif;font-size:clamp(2.2rem,5vw,3.8rem);line-height:1.2;animation:1s forwards fadeInDown}.english-title{color:var(--gold-light);letter-spacing:.4em;text-transform:uppercase;opacity:.75;margin-top:8px;font-family:Cinzel,serif;font-size:clamp(.7rem,1.5vw,.9rem);animation:1s .2s both fadeInDown}.title-divider{justify-content:center;align-items:center;gap:16px;width:300px;margin:18px auto 0;animation:1.2s .4s both fadeIn;display:flex}.title-divider:before,.title-divider:after{content:"";background:linear-gradient(to right, transparent, var(--gold));flex:1;height:1px}.title-divider:after{background:linear-gradient(to left, transparent, var(--gold))}.lotus{color:var(--gold);font-size:1.2rem}.kural-card{width:100%;max-width:720px;animation:1s .3s both fadeInUp;position:relative}.card-frame{text-align:center;background:linear-gradient(145deg,#1e1408,#0f0a05,#1a110a);border:1px solid #c9a84c4d;padding:50px 56px;position:relative;overflow:hidden}.card-frame:before{content:"";pointer-events:none;border:1px solid #c9a84c1f;position:absolute;inset:6px}.corner{border-color:var(--gold);opacity:.6;border-style:solid;width:36px;height:36px;position:absolute}.corner-tl{border-width:2px 0 0 2px;top:10px;left:10px}.corner-tr{border-width:2px 2px 0 0;top:10px;right:10px}.corner-bl{border-width:0 0 2px 2px;bottom:10px;left:10px}.corner-br{border-width:0 2px 2px 0;bottom:10px;right:10px}.kural-badge{letter-spacing:.35em;color:#f5e8c4;opacity:1;text-transform:uppercase;text-shadow:0 0 12px #e8c97a59;margin-bottom:22px;font-family:Cinzel,serif;font-size:.7rem;transition:opacity .4s}.kural-number{color:#ffe08a;letter-spacing:0;opacity:1;margin-left:8px;font-size:1rem;font-weight:600;display:inline-block}.adhikaram{letter-spacing:.3em;color:#f0b888;text-transform:uppercase;opacity:1;text-shadow:0 0 10px #f0b8884d;margin-bottom:30px;font-family:Cinzel,serif;font-size:.65rem}.tamil-verse{color:var(--cream);text-shadow:0 2px 20px #f5ead81a;letter-spacing:.02em;width:100%;min-width:0;margin-bottom:28px;font-family:Tiro Tamil,serif;font-size:clamp(1.4rem,3vw,2rem);line-height:2;overflow:hidden}.verse-line{display:block}.verse-line-1{white-space:nowrap;max-width:100%}.sep{justify-content:center;align-items:center;gap:14px;margin:28px 0;display:flex}.sep-line{background:linear-gradient(90deg,#0000,#c9a84c59,#0000);flex:1;height:1px}.sep-diamond{background:var(--gold);opacity:.6;width:6px;height:6px;transform:rotate(45deg)}.translation-label{letter-spacing:.4em;color:var(--gold);opacity:.5;text-transform:uppercase;margin-bottom:16px;font-family:Cinzel,serif;font-size:.6rem}.english-translation{color:var(--parchment-dark);opacity:.9;max-width:560px;margin:0 auto;font-family:Cormorant Garamond,serif;font-size:clamp(1.1rem,2.2vw,1.45rem);font-style:italic;line-height:1.85}.explanation-label{letter-spacing:.4em;color:var(--gold);opacity:.5;text-transform:uppercase;margin-top:28px;margin-bottom:12px;font-family:Cinzel,serif;font-size:.6rem}.explanation{color:var(--parchment);opacity:.6;max-width:560px;margin:0 auto;font-family:Cormorant Garamond,serif;font-size:clamp(.95rem,1.8vw,1.15rem);line-height:1.9}.btn-row{justify-content:center;margin-top:44px;display:flex}.generate-btn{color:var(--gold);letter-spacing:.35em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #c9a84c80;padding:16px 44px;font-family:Cinzel,serif;font-size:.72rem;transition:all .4s;position:relative;overflow:hidden}.generate-btn:before{content:"";opacity:0;background:linear-gradient(135deg,#c9a84c14,#c9a84c05);transition:opacity .4s;position:absolute;inset:0}.generate-btn:hover:before{opacity:1}.generate-btn:hover{border-color:var(--gold);color:var(--gold-light);transform:translateY(-1px);box-shadow:0 0 30px #c9a84c26,inset 0 0 20px #c9a84c0d}.generate-btn:active{transform:translateY(0)}.generate-btn.loading{pointer-events:none;opacity:.5}.card-content{width:100%;min-width:0;transition:opacity .35s,transform .35s}.card-content.fade-out{opacity:0;transform:translateY(6px)}.card-content.fade-in{opacity:1;transform:translateY(0)}footer{text-align:center;letter-spacing:.3em;color:var(--gold);opacity:.25;text-transform:uppercase;margin-top:44px;font-family:Cinzel,serif;font-size:.6rem;animation:2s 1s both fadeIn}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (width<=600px){.card-frame{padding:36px 28px}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html,body,#root{min-height:100%}body{margin:0}#root{min-height:100svh}
