@font-face{font-family:Kanit;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/f8facca68d062c27-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:Kanit;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/cef7b1d77d754f57-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Kanit;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/bcc230760beba904-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Kanit;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/bf2a3d1ec1972157-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Kanit;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/75717585c59e5075-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:Kanit;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/158a69e2aae09d8b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Kanit;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/9c064da0c6a8705d-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Kanit;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/a5f02fb6311fcdbc-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Kanit;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e947190c9bdf6068-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:Kanit;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/52c95d4165d01384-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Kanit;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/574f1d56a01c5fcb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Kanit;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/25f7d470e08d7a87-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Kanit;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/dd867c03515903ae-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:Kanit;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/5dfeb3c6bf0f27aa-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Kanit;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/5d1189028b68a613-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Kanit;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/61eb19e8a04bc1be-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Kanit Fallback;src:local("Arial");ascent-override:108.49%;descent-override:38.96%;line-gap-override:0.00%;size-adjust:101.39%}.__className_d81428{font-family:Kanit,Kanit Fallback;font-style:normal}.__variable_d81428{--font-kanit:"Kanit","Kanit Fallback"}:root{--color-fg:#000000;--color-bg:#ffffff;--color-muted:#6b7280;--color-accent:#ff5b0f;--color-input-bg:#f0f0f1;--color-input-border:#d8d8db;--radius-pill:9999px;--radius-card:24px;--radius-input:18px}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--color-bg);color:var(--color-fg);font-family:var(--font-kanit),"Helvetica Neue",Arial,sans-serif}main{max-width:1200px;margin:0 auto;padding:4rem 1.5rem;min-height:100vh;display:flex;align-items:center;gap:4rem}.panel-left,.panel-right{flex:1 1;min-width:0}@media (max-width:900px){main{flex-direction:column;align-items:stretch;min-height:auto;gap:2.5rem}}.eyebrow{display:block;font-size:.75rem;font-weight:400;text-transform:uppercase;letter-spacing:.45em;color:var(--color-muted);margin-bottom:1.25rem}h1{font-size:clamp(2.5rem,6vw,4rem);line-height:1.06;letter-spacing:-.025em;margin:0 0 1.25rem}h1 .weight-bold{font-weight:700}h1 .weight-light{font-weight:300}.tagline{font-size:1.1rem;font-weight:600;margin:0 0 1rem}.description{font-size:.9rem;line-height:1.75;color:var(--color-muted);max-width:46ch;margin:0 0 2.5rem}.field-label{display:block;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.75rem}.concept-input{width:100%;padding:1rem 1.25rem;font-size:1rem;font-family:inherit;line-height:1.5;border:1px solid var(--color-input-border);border-radius:var(--radius-input);background:var(--color-input-bg);color:var(--color-fg);margin-bottom:1.25rem;box-shadow:inset 0 1px 3px rgba(0,0,0,.06);transition:background-color .15s ease,border-color .15s ease;resize:none;overflow-x:hidden;overflow-y:auto;max-height:calc(1.5em * 5 + 2rem + 2px);display:block;scrollbar-width:none;-ms-overflow-style:none}.concept-input::-webkit-scrollbar{display:none}.concept-input::placeholder{color:var(--color-muted)}.concept-input:hover{border-color:var(--color-muted)}.concept-input:focus{outline:none;background:var(--color-bg);border-color:var(--color-fg);box-shadow:0 0 0 2px var(--color-fg)}.generate-button{position:relative;width:100%;display:flex;flex-direction:column;gap:.5rem;padding:1.15rem 4.75rem 1.15rem 1.75rem;font-family:inherit;background:var(--color-fg);color:var(--color-bg);border:1px solid var(--color-fg);border-radius:var(--radius-card);cursor:pointer;text-align:left;text-decoration:none}.generate-button-main{font-size:1rem;font-weight:600}.generate-button-usage{display:flex;flex-direction:column;gap:.25rem}.generate-button-usage-remaining{font-size:.78rem;font-weight:600;color:rgba(255,255,255,.9)}.generate-button-usage-countdown{font-size:.68rem;font-weight:400;color:rgba(255,255,255,.4)}.generate-button:disabled .generate-button-usage-countdown,.generate-button:disabled .generate-button-usage-remaining{color:var(--color-muted)}.generate-button-icon{position:absolute;top:50%;right:1rem;transform:translateY(-50%);flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-bg)}.generate-button:disabled{background:var(--color-bg);color:var(--color-muted);border-color:var(--color-muted);cursor:not-allowed}.generate-button:disabled .generate-button-icon{background:var(--color-muted)}.result-area{width:100%}.result-loading{aspect-ratio:1/1;border-radius:var(--radius-card);padding:3rem 1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.25rem;text-align:center;background:var(--color-fg);box-shadow:0 20px 50px rgba(0,0,0,.08),0 4px 12px rgba(0,0,0,.05)}.spinner{width:72px;height:72px;border-radius:var(--radius-pill);border:6px solid rgba(255,255,255,.15);border-top:6px solid var(--color-accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.result-loading-text{display:flex;flex-direction:column;gap:.5rem}.result-loading-title{color:var(--color-bg);font-size:1rem;font-weight:600}.result-loading-subtitle{color:rgba(255,255,255,.5);font-size:.85rem}.result-placeholder{position:relative;aspect-ratio:1/1;border-radius:var(--radius-card);padding:3rem 1.5rem;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--color-muted);background:var(--color-bg);box-shadow:0 20px 50px rgba(0,0,0,.08),0 4px 12px rgba(0,0,0,.05);overflow:hidden}.result-placeholder--limit{flex-direction:column;gap:1rem}.result-placeholder-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.06}.result-placeholder:before{content:"";position:absolute;top:0;bottom:0;left:-100%;width:300%;background:linear-gradient(115deg,transparent 30%,rgba(255,0,90,.09) 40%,rgba(255,158,0,.09) 45%,rgba(255,224,0,.09) 50%,rgba(0,200,120,.09) 55%,rgba(0,140,255,.09) 60%,rgba(150,60,255,.09) 65%,transparent 75%);transform:translateX(-100%);animation:rainbow-sweep 10s linear infinite;will-change:transform;pointer-events:none}@keyframes rainbow-sweep{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.result-placeholder p{position:relative;font-weight:600;white-space:nowrap}.result-error{border-radius:var(--radius-card);padding:1.5rem;background:var(--color-bg);box-shadow:0 20px 50px rgba(0,0,0,.08),0 4px 12px rgba(0,0,0,.05)}.retry-button{margin-top:.75rem;padding:.6rem 1.5rem;font-family:inherit;font-weight:600;background:var(--color-fg);color:var(--color-bg);border:1px solid var(--color-fg);border-radius:var(--radius-pill);cursor:pointer}.result-card{position:relative;border-radius:var(--radius-card);overflow:hidden;background:var(--color-bg);box-shadow:0 20px 50px rgba(0,0,0,.08),0 4px 12px rgba(0,0,0,.05);animation:result-card-in .3s ease-out}@keyframes result-card-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.result-image{width:100%;height:auto;display:block}.download-button{position:absolute;top:14px;right:14px;display:flex;align-items:center;gap:.5rem;min-height:48px;padding:.75rem 1.35rem;font-family:inherit;font-size:.95rem;font-weight:600;letter-spacing:.01em;color:#ffffff;background:rgba(0,0,0,.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-pill);cursor:pointer;transition:transform .15s ease,background-color .15s ease}.download-button:hover{background:rgba(0,0,0,.8);transform:scale(1.05)}.download-button-icon{display:flex;align-items:center;justify-content:center}@media (max-width:480px){.download-button{top:10px;right:10px;font-size:.85rem;padding:.65rem 1.1rem}}.completion-badge{position:absolute;top:12px;left:12px;display:flex;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.75rem;font-weight:600;color:#ffffff;background:rgba(0,0,0,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:var(--radius-pill);animation:badge-pop 2.2s ease-out forwards}.completion-badge-icon{display:flex;align-items:center;justify-content:center;color:var(--color-accent)}@keyframes badge-pop{0%{opacity:0;transform:translateY(-4px) scale(.9)}13%{opacity:1;transform:translateY(0) scale(1)}82%{opacity:1}to{opacity:0}}.cal-icon-wrap{position:relative;width:72px;height:72px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);animation:cal-glow 1.8s ease-out infinite}.cal-icon{width:60px;height:60px;color:var(--color-fg);animation:cal-pulse 1.8s ease-in-out infinite}@keyframes cal-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes cal-glow{0%,to{box-shadow:0 0 0 0 rgba(255,91,15,.28)}50%{box-shadow:0 0 0 16px rgba(255,91,15,0)}}.result-placeholder .cal-title{position:relative;font-weight:700;font-size:1.05rem;margin:0;white-space:normal;color:var(--color-fg)}.result-placeholder .cal-body{position:relative;font-size:.82rem;font-weight:300;color:var(--color-muted);line-height:1.65;margin:0;max-width:30ch;white-space:normal}.cal-body b{font-weight:600;color:var(--color-fg)}