@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;1,300;1,400&family=Gowun+Batang:wght@400;700&family=Gowun+Dodum&family=Inter:wght@300;400;500&display=swap";@import "https://fonts.googleapis.com/css2?family=Exo:wght@100;200;300;400;500;600;700;800;900&display=swap";:root{--season-color:#8c9ca8;--bg:#fdfdfd;--text-primary:#000;--accent-color:#000;--text-body:#000;--text-label:#333;--text-placeholder:#999;--border-line:#e2e2e2;--btn-bg:#f0f0f0;--border-card:#eaeaea;--border-input:#d5d5d5;--btn-hover-bg:#e8e8e8;--radius-pill:12px;--radius-card:8px;--font-sans:"Inter", "Gowun Dodum", sans-serif;--font-headline:"Gowun Batang", serif;--font-body:"Gowun Dodum", sans-serif;--font-english:"Cormorant Garamond", serif;--space-xs:.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2.5rem;--space-xl:4rem;--space-xxl:6rem}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{background-color:var(--bg);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;line-height:1.5}:is(body:has(.folio-root),body:has(.fp-root),body:has(.fc-root)){scrollbar-width:none;-ms-overflow-style:none;background:#fa5134;margin:0;padding:0;overflow:hidden}body:has(.folio-root)::-webkit-scrollbar{display:none}body:has(.fp-root)::-webkit-scrollbar{display:none}body:has(.fc-root)::-webkit-scrollbar{display:none}:is(#root:has(.folio-root),#root:has(.fp-root),#root:has(.fc-root)){gap:0;max-width:none;padding:0;overflow:hidden}#root{flex-direction:column;gap:1.5rem;max-width:1040px;min-height:100vh;margin:0 auto;padding:2.5rem;display:flex;position:relative}#root:has(.folio-root){gap:0;max-width:100%;padding:0}.nav{border:1px solid var(--border-line);border-radius:var(--radius-pill);background:var(--bg);z-index:100;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1rem 1.8rem;display:flex}.nav-logo{letter-spacing:.05em;color:var(--text-primary);font-size:.85rem;font-weight:500;text-decoration:none}.nav-season{color:var(--text-label);letter-spacing:.1em;font-size:.75rem}.nav-menu{letter-spacing:.05em;color:var(--text-label);cursor:pointer;align-items:center;font-size:.85rem;font-weight:500;text-decoration:none;transition:color .3s;display:flex}.nav-menu:hover{color:var(--text-primary)}.nav-dropdown{-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-line);border-radius:var(--radius-card);z-index:105;opacity:0;pointer-events:none;background:#ffffffd9;padding:2.5rem;transition:opacity .4s,transform .4s;position:absolute;top:95px;left:2.5rem;right:2.5rem;transform:translateY(-10px);box-shadow:0 10px 40px #00000014}.nav-dropdown.open{opacity:1;pointer-events:all;transform:translateY(0)}.dropdown-content{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.dropdown-col{flex-direction:column;gap:1rem;display:flex}.dropdown-category{font-family:var(--font-english);color:var(--text-label);letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--border-line);margin-bottom:.5rem;padding-bottom:.5rem;font-size:.8rem}.dropdown-item{font-family:var(--font-sans);color:var(--text-body);font-size:.95rem;text-decoration:none;transition:color .3s}.dropdown-item:hover{color:var(--text-primary)}.info-row{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem;display:grid}.info-card{border:1px solid var(--border-line);border-radius:var(--radius-card);color:var(--text-primary);justify-content:space-between;align-items:center;padding:1.2rem 1.5rem;font-size:.9rem;display:flex}.icon-i{color:var(--text-label);border:1px solid var(--border-line);border-radius:4px;padding:0 6px;font-family:serif;font-size:.8rem;font-style:italic;line-height:1.4}.main-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:1.5rem;display:grid}.left-compartment{flex-direction:column;grid-column:span 2;gap:1.5rem;display:flex}.right-compartment{flex-direction:column;grid-column:span 1;align-self:start;gap:1.5rem;display:flex}.grid-card{border:1px solid var(--border-line);border-radius:var(--radius-card);text-align:left;flex-direction:column;padding:2rem;transition:border-color .3s,background-color .3s;display:flex;position:relative}.grid-card:hover{border-color:var(--text-label)}.color-card{transition:box-shadow .4s,transform .4s,border-color .4s}.color-card:hover{border-color:#0000001a;transform:translateY(-5px);box-shadow:0 10px 30px #0000000d}.canvas-wrapper{border-bottom:1px solid var(--border-line);justify-content:center;align-items:center;width:100%;height:560px;margin-bottom:1.5rem;display:flex;position:relative}.canvas-wrapper canvas{width:100%;height:100%}.julie-transit-card{border:1px solid var(--border-line);background:var(--bg);text-align:left;z-index:10;border-radius:8px;width:45%;max-width:280px;padding:1rem;position:absolute;top:10%;right:5%}.transit-date{letter-spacing:.1em;color:var(--text-label);text-transform:uppercase;font-size:.65rem;font-family:var(--font-sans);margin-bottom:.5rem}.transit-aspect{font-family:var(--font-english);color:var(--text-primary);margin-bottom:.5rem;font-size:1.15rem;font-style:italic;font-weight:500}.transit-desc{color:var(--text-placeholder);word-break:keep-all;font-size:.75rem;line-height:1.6;font-family:var(--font-sans)}.card-text{margin-top:auto}.card-title{color:var(--text-primary);margin-bottom:.2rem;font-size:1rem;font-weight:500}.card-desc{color:var(--text-label);font-size:.85rem}.form-card{grid-column:span 1;justify-content:center;padding:2rem}.form-wrapper{width:100%}.minimal-input-group{gap:.5rem;margin-bottom:.8rem;display:flex}.minimal-input-group input,.minimal-input-group select{border:1px solid var(--border-line);width:100%;color:var(--text-primary);background:0 0;border-radius:8px;outline:none;padding:.7rem .8rem;font-family:inherit;font-size:.85rem;transition:border-color .3s}.minimal-input-group select option{background-color:var(--bg);color:var(--text-primary)}.minimal-input-group input:focus,.minimal-input-group select:focus{border-color:var(--text-primary)}.minimal-input-group input::placeholder{color:var(--text-placeholder)}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{appearance:textfield}.minimal-btn{background:var(--btn-bg);border:1px solid var(--border-line);width:100%;color:var(--text-primary);cursor:pointer;border-radius:8px;margin-top:1.2rem;padding:.9rem;font-size:.9rem;font-weight:500;transition:background .3s}.minimal-btn:hover{background:var(--btn-hover-bg)}.link-card{color:inherit;cursor:pointer;flex-direction:column;text-decoration:none;display:flex}.icon-wrapper{flex:1;justify-content:center;align-items:center;margin-bottom:2rem;display:flex}.icon-wrapper svg,.card svg,.grid-card svg{color:var(--text-primary);opacity:.85;mix-blend-mode:multiply;transition:opacity .3s}.card:hover svg,.grid-card:hover svg,.link-card:hover svg{opacity:1}.support-section{margin-top:35rem}.support-title{color:var(--text-label);text-align:left;margin-bottom:1rem;font-size:.85rem;font-weight:400}.support-grid{grid-template-columns:repeat(4,1fr);gap:1.2rem;display:grid}.support-item{border:1px solid var(--border-line);border-radius:var(--radius-card);color:var(--text-primary);justify-content:space-between;align-items:center;padding:1.2rem 1.5rem;font-size:.9rem;display:flex}.footer{border:1px solid var(--border-line);border-radius:var(--radius-pill);justify-content:space-between;align-items:center;margin-top:.5rem;padding:1.2rem 1.8rem;display:flex}.footer p,.footer-copy,.footer a{color:var(--text-label);margin-right:1.8rem;font-size:.85rem;text-decoration:none;transition:color .3s}.footer a:hover{color:var(--text-primary)}.costar-container{-webkit-backdrop-filter:blur(12px);background:linear-gradient(135deg,#fffc 0%,#f5f5f5e6 100%) 0 0/100% 100%,linear-gradient(#00000005 1px,#0000 1px) 0 0/40px 40px,linear-gradient(90deg,#00000005 1px,#0000 1px) 0 0/40px 40px;border:1px solid #0000000f;border-radius:24px;grid-template-columns:1fr 1fr;gap:4rem;padding:3rem;transition:transform .5s cubic-bezier(.4,0,.2,1),box-shadow .5s;display:grid;position:relative;box-shadow:0 20px 50px #0000000a,inset 0 1px #ffffff80}.costar-container:hover{transform:translateY(-5px);box-shadow:0 30px 60px #00000014,inset 0 1px #fffc,0 0 40px #00000005}.costar-left,.costar-right{flex-direction:column;gap:.5rem;display:flex}.costar-list-item{cursor:pointer;background:#00000005;border:1px solid #0000000a;border-radius:12px;justify-content:space-between;align-items:center;padding:1.2rem 1.5rem;transition:all .4s;display:flex;position:relative;overflow:hidden}.costar-list-item:before{content:"";background:linear-gradient(90deg,#0000,#0000000a,#0000);width:100%;height:100%;transition:transform .6s;position:absolute;top:0;left:0;transform:translate(-100%)}.costar-list-item:hover{background:#00000005;border-color:#b58a9433;transform:scale(1.02);box-shadow:0 8px 24px #0000000f}.costar-list-item:hover:before{transform:translate(100%)}.costar-name{font-family:var(--font-sans);color:var(--text-primary);letter-spacing:.02em;width:25%;font-size:1.05rem;font-weight:500}.costar-big3{color:var(--text-label);text-align:left;letter-spacing:.08em;flex:1;gap:1rem;font-family:Courier New,Courier,monospace;font-size:.8rem;display:flex}.costar-big3 span{background:#0000000d;border:1px solid #00000008;border-radius:6px;align-items:center;gap:.3rem;padding:.2rem .6rem;display:inline-flex}.costar-arrow{color:var(--text-label);font-family:monospace;font-size:1.2rem;transition:transform .3s,color .3s}.costar-list-item:hover .costar-arrow{color:var(--accent-color);transform:translate(5px)}.costar-right{background:#0003;border:1px solid #ffffff08;border-radius:16px;padding:1.5rem}.costar-legend-item{border-bottom:1px dashed #ffffff0d;align-items:center;padding:.7rem 0;transition:background .3s,padding-left .3s;display:flex}.costar-legend-item:last-child{border-bottom:none}.costar-legend-item:hover{background:#ffffff08;border-radius:4px;padding-left:.5rem}.costar-glyph{color:var(--accent-color);text-align:center;text-shadow:0 0 10px #0000000d;width:45px;font-family:Times New Roman,Times,serif;font-size:1.3rem;font-weight:300}.costar-meaning{color:var(--text-body);letter-spacing:.15em;text-transform:uppercase;opacity:.8;font-family:Courier New,Courier,monospace;font-size:.75rem}.aspect-chart-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);aspect-ratio:1;background:radial-gradient(circle,#f5f5f5cc 0%,#ffffff80 70%);border:1px solid #00000014;border-radius:50%;max-width:400px;margin:0 auto;position:relative;box-shadow:0 0 40px #0000000a,inset 0 0 30px #00000005}.aspect-chart-container:before{content:"";border:1px dashed #0000001a;border-radius:50%;animation:120s linear infinite spinSlowWider;position:absolute;inset:5%}.aspect-earth-core{background:radial-gradient(circle at 30% 30%, var(--border-line), #fafafa);z-index:5;border:1px solid #0000000d;border-radius:50%;width:70px;height:70px;position:absolute;box-shadow:0 0 20px #0000000d,inset 0 4px 10px #00000008}.aspect-earth-core:after{content:"";border:1px solid #0000000d;border-radius:50%;animation:4s ease-in-out infinite alternate pulseCore;position:absolute;inset:-15px}.aspect-houses{z-index:1;border-radius:50%;width:100%;height:100%;animation:240s linear infinite spinSlow;position:absolute;top:0;left:0}.aspect-house-line{opacity:.8;background:linear-gradient(#0000 10%,#0000000d 12%,#0000001a 88%,#0000 90%);width:1px;height:100%;position:absolute;top:0;left:50%}.aspect-floating-box{z-index:10;text-align:left;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffa6;border:1px solid #00000014;border-radius:16px;width:100%;max-width:320px;margin:2rem auto 0;padding:1.8rem;position:relative;box-shadow:0 10px 30px #0000000f}.aspect-date{letter-spacing:.2em;color:var(--accent-color);text-transform:uppercase;margin-bottom:.8rem;font-family:Courier New,Courier,monospace;font-size:.7rem}.aspect-title{font-family:var(--font-english);color:var(--text-primary);letter-spacing:.05em;margin-bottom:1rem;font-size:1.4rem;font-style:italic;font-weight:300}.aspect-desc{color:var(--text-body);opacity:.9;font-size:.85rem;line-height:1.7}@keyframes spinSlow{to{transform:rotate(360deg)}}@keyframes spinSlowWider{to{transform:rotate(-360deg)}}@keyframes pulseCore{to{opacity:.6;transform:scale(1.1);box-shadow:0 0 30px #fadbe033}}@media (width<=900px){.support-grid{grid-template-columns:repeat(2,1fr)}.info-row{grid-template-columns:1fr}.main-grid{flex-direction:column;display:flex}.left-compartment{order:2;width:100%}.right-compartment{order:1;width:100%}.services-grid{grid-template-columns:repeat(2,1fr)}.dropdown-content{grid-template-columns:1fr;gap:1.2rem}}@media (width<=600px){#root{padding:1rem}.main-grid{flex-direction:column;gap:1rem;display:flex}.support-grid,.services-grid{grid-template-columns:1fr}.footer{flex-direction:column;gap:1rem}.footer-links-left a,.footer-links-right a{margin:0 .5rem}.nav{padding:.8rem 1rem}.nav-logo{font-size:.8rem}.nav-season{display:none}.nav-dropdown{padding:1.5rem;top:80px;left:1rem;right:1rem}.dropdown-content{grid-template-columns:1fr;gap:1rem}.grid-card{padding:1.2rem 1rem}.icon-wrapper{margin-bottom:.8rem}.icon-wrapper svg{width:32px;height:32px}.card-title{font-size:.95rem}.card-desc{font-size:.8rem}.right-compartment{gap:.8rem}.menu-header{padding:1.5rem 0 1rem}.menu-title{font-size:1.2rem}}.dash-header{text-align:center;padding:var(--space-xl) 0 var(--space-md)}.dash-header h1{font-family:var(--font-headline);color:var(--text-primary);font-size:2rem}.dash-grid{gap:var(--space-md);grid-template-columns:repeat(12,1fr);display:grid}.col-4{grid-column:span 4}.col-6{grid-column:span 6}.col-8{grid-column:span 8}.col-12{grid-column:span 12}.module{border:1px solid var(--border-line);border-radius:var(--radius-card);padding:var(--space-lg);transition:border-color .5s}.module-label{color:var(--text-label);letter-spacing:.08em;margin-bottom:var(--space-sm);font-size:.7rem}.module-title{color:var(--text-primary);margin-bottom:var(--space-xs);font-size:1.25rem;font-family:var(--font-headline)}.module-desc{color:var(--text-label);margin-bottom:var(--space-md);font-size:.85rem}.chart-area{justify-content:center;align-items:center;width:100%;height:240px;display:flex}.chart-area.tall{height:320px}.paywall-container{max-width:640px;padding:var(--space-xl);text-align:center;margin:0 auto}.paywall-container h1{color:var(--text-primary);margin-bottom:var(--space-xs);font-size:2rem;font-family:var(--font-headline)}.price-card{border:1px solid var(--border-line);border-radius:var(--radius-card);padding:var(--space-xl);margin-bottom:var(--space-lg)}.price-amount{color:var(--text-primary);margin-bottom:var(--space-xs);font-size:2.8rem;font-family:var(--font-headline)}.btn-purchase{background:var(--text-primary);width:100%;color:var(--bg);cursor:pointer;border:none;border-radius:8px;padding:1rem;font-size:1rem}.menu-header{text-align:center;padding:var(--space-xl) 0}.menu-title{letter-spacing:.2em;color:var(--text-primary);font-size:1.8rem;font-family:var(--font-headline)}.services-grid{gap:var(--space-md);grid-template-columns:repeat(2,1fr);display:grid}.card,.grid-card{cursor:pointer;transition:all .4s cubic-bezier(.25,.46,.45,.94)!important}.card:hover,.grid-card:hover{transform:translateY(-6px);border-color:var(--text-primary)!important;background:linear-gradient(145deg, var(--bg), #f1f1f1)!important;box-shadow:0 15px 30px #0000000a!important}.card:active,.grid-card:active{transform:translateY(-2px);box-shadow:0 8px 16px #00000005!important}.card:hover .card-title,.grid-card:hover .card-title{text-shadow:0 0 12px #b58a9426}.conv-line{font-family:var(--font-body);color:var(--text-body);margin-bottom:.5rem;font-size:1rem;line-height:2.2}.conv-input,.conv-select{border:1px solid var(--border-line);color:var(--text-primary);text-align:center;background:#00000005;border-radius:8px;outline:none;margin:0 .4rem;padding:.2rem .4rem;font-family:inherit;font-size:1rem;transition:all .3s}.conv-input:focus,.conv-select:focus{border-color:var(--text-primary);background:#ffffff12;box-shadow:0 0 8px #a5737d40}.conv-input.w6{text-align:left;width:140px}.conv-input.w4{width:70px}.conv-input.w2{width:45px}.conv-select{cursor:pointer}.conv-select option{background:var(--bg);color:var(--text-primary)}@media print{body{color:#000!important;background:0 0!important}.nav,.footer,.support-section,.chat-input-area,.btn-primary,.paywall-container{display:none!important}.main-grid,.costar-container,.dashboard,.dashboard-content{page-break-inside:auto}.left-compartment,.right-compartment{width:100%!important}.card,.grid-card,.module,.info-card,.costar-list-item,.costar-legend-item,.compat-cat-card,.compat-result-header,.compat-relation-badge{break-inside:avoid;page-break-inside:avoid;border:1px solid #333!important}.canvas-wrapper{page-break-inside:avoid;height:auto!important;max-height:500px!important}}:root{--gap:10px;--edge:10px}.folio-root{box-sizing:border-box;scrollbar-width:none;-ms-overflow-style:none;background:#fa5134;width:100%;height:100vh;font-family:Exo,sans-serif;transition:background .6s;position:relative;overflow:hidden}.folio-root::-webkit-scrollbar{display:none}.folio-root.bg-dim{background:#222}.folio-star{z-index:20;pointer-events:none;opacity:0;position:absolute;top:50%;left:50%;transform:translate(-50%,60vh)}.folio-star.phase-0{opacity:0;transform:translate(-50%,60vh)}.folio-star.phase-1{opacity:1;transition:transform .6s cubic-bezier(.33,1,.68,1),opacity .3s;transform:translate(-50%,-50%)}.folio-star.phase-2{opacity:1;transform:translate(-50%,-50%)}.folio-star.phase-3{opacity:0;transition:transform .6s cubic-bezier(.65,0,.35,1),opacity .4s .2s;transform:translate(-50%,-65vh)}.folio-hero-area{width:85%;padding:2.8vh var(--edge);transition:opacity .4s;position:absolute;top:0;left:0}.folio-hero-area.fade-out{opacity:0;pointer-events:none}.folio-hero-title{color:#fff;white-space:nowrap;margin:0;font-size:clamp(1.5rem,3.6vw,2.25rem);font-weight:700;line-height:1.05;transition:transform .75s cubic-bezier(.65,0,.35,1);transform:translate(-560px)}.folio-hero-title.show{transform:translate(0)}.folio-hero-desc{color:#fff;width:40%;margin:1.5vh 0 0 20%;font-size:clamp(.75rem,1.2vw,1rem);font-weight:400;line-height:1.4;transition:transform .6s cubic-bezier(.33,1,.68,1);transform:translate(-80vw)}.folio-hero-desc.show{transform:translate(0)}.folio-menu-area{bottom:var(--edge);left:var(--edge);right:var(--edge);gap:var(--gap);z-index:40;pointer-events:none;align-items:flex-end;transition:transform .6s cubic-bezier(.33,1,.68,1);display:flex;position:absolute;transform:translateY(70vh)}.folio-menu-area.show{pointer-events:auto;transform:translateY(0)}.folio-grid{gap:var(--gap);flex:1;grid-template-rows:auto auto;grid-template-columns:1fr 1fr clamp(90px,14.5vw,225px);min-width:0;transition:all .5s;display:grid}.folio-grid *{box-sizing:border-box}.folio-cell{cursor:crosshair;aspect-ratio:2.5;background:#fff 50%/cover;border-radius:0;flex-direction:column;justify-content:space-between;padding:30px;transition:all .5s cubic-bezier(.65,0,.35,1);display:flex;position:relative;overflow:hidden}.folio-cell:hover,.folio-cell:hover .folio-cell-num,.folio-cell:hover .folio-cell-title{color:#fff}.folio-cell-menu:hover{background:linear-gradient(135deg,#1f1c2c,#928dab)}.folio-cell--about:hover{background:linear-gradient(135deg,#1b1b2f,#162447)}.folio-cell--people:hover{background:linear-gradient(135deg,#0f2027,#203a43)}.folio-cell--ask:hover{background:linear-gradient(135deg,#2c003e,#512b58)}.folio-cell--mypage:hover{background:linear-gradient(135deg,#004d40,#00695c)}.folio-cell.expanded{aspect-ratio:auto;cursor:default;background-color:#fff;background-position:50%;background-size:cover;height:auto;padding:30px;transition:background-image .5s}.folio-cell.expanded.has-bg,.folio-cell.expanded.has-bg .folio-cell-num{color:#fff}.folio-cell-overlay{z-index:1;pointer-events:none;background:#00000080;position:absolute;inset:0}.folio-close-btn{z-index:2;letter-spacing:.1em;cursor:pointer;color:#fff;opacity:.7;font-size:.8rem;font-weight:500;transition:opacity .3s;position:absolute;top:20px;right:20px}.folio-close-btn:hover{opacity:1}.folio-inner-menu{z-index:2;color:#000;flex-direction:column;height:100%;display:flex;position:relative}.folio-cell.expanded.has-bg .folio-inner-menu{color:#fff}.folio-inner-menu-header{justify-content:space-between;margin-bottom:12px;display:flex}.folio-cell-title-small{text-transform:uppercase;font-size:.8rem;font-weight:700}.folio-inner-list-container{flex-direction:column;flex:1;justify-content:center;gap:10px;display:flex}.folio-inner-item{cursor:pointer;opacity:.4;align-items:center;gap:15px;transition:transform .3s,opacity .3s;display:flex}.folio-inner-item.active,.folio-inner-item:hover{opacity:1;transform:translate(10px)}.folio-inner-num{min-width:40px;font-family:monospace;font-size:.85rem;font-weight:400}.folio-inner-title{letter-spacing:-.01em;font-size:clamp(1rem,2vw,1.5rem);font-weight:700}.folio-cell-top{justify-content:space-between;align-items:flex-start;display:flex}.folio-cell-num{font-size:clamp(.6rem,1vw,.85rem);font-weight:700;line-height:1.2}.folio-cell-title{letter-spacing:-.02em;margin-top:auto;font-size:clamp(1.2rem,2.8vw,2.25rem);font-weight:500;line-height:1.05}.folio-logo-area{flex-shrink:0;align-self:end}.folio-logo-block{aspect-ratio:1.16;background:#000;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;max-width:225px;max-height:194px;display:flex}.folio-logo-name{color:#fa5134;letter-spacing:.02em;font-size:clamp(1.2rem,2.2vw,2rem);font-weight:900;line-height:1}.folio-logo-tag{color:#fff;letter-spacing:.08em;text-align:center;font-size:clamp(.35rem,.55vw,.5rem);font-weight:300;line-height:1.4}@media (width<=1024px){.folio-hero-title{font-size:clamp(2rem,5vw,2.8rem)}.folio-hero-desc{width:55%;margin-left:10%;font-size:clamp(.9rem,1.8vw,1.2rem)}.folio-cell{aspect-ratio:2.5;padding:24px}.folio-cell.expanded{padding:24px}}@media (width<=768px){.folio-root{flex-direction:column;justify-content:flex-end;height:auto;min-height:100dvh;display:flex;overflow-y:auto}.folio-hero-area{box-sizing:border-box;width:100%;padding:2vh 3vw;position:relative}.folio-hero-title{font-size:clamp(1.4rem,6vw,2rem);transform:translate(0)}.folio-hero-desc{width:80%;margin-left:0;font-size:clamp(.7rem,2.8vw,.9rem);transform:translate(0)}.folio-menu-area{padding:0 var(--edge) var(--edge);box-sizing:border-box;width:100%;margin-top:auto;position:relative;bottom:auto;left:0;right:0;transform:translateY(0)}.folio-grid{grid-template-rows:auto auto auto auto;grid-template-columns:1fr 90px}.folio-cell-menu{grid-area:1/1/2/2!important}.folio-cell-menu.expanded{aspect-ratio:auto;padding:10px;grid-area:1/1/2/2!important;height:auto!important}.folio-cell--about{grid-area:2/1/3/2!important}.folio-cell--people{grid-area:3/1/4/2!important}.folio-cell--ask{grid-area:4/1/5/2!important}.folio-logo-area{align-self:end;grid-area:4/2/5/3!important}.folio-cell{aspect-ratio:3.333;padding:10px}.folio-inner-title{font-size:1.6rem}.folio-logo-block{width:90px;height:90px}.folio-logo-name{font-size:clamp(.9rem,3.5vw,1.3rem)}.folio-logo-tag{font-size:clamp(.4rem,1.2vw,.55rem)}}@media (width<=480px){.folio-hero-title{font-size:clamp(1.2rem,7vw,1.8rem)}.folio-hero-desc{width:90%;font-size:clamp(.7rem,3.5vw,.9rem)}.folio-cell{aspect-ratio:3.333;padding:16px}.folio-cell-title{font-size:clamp(1rem,5vw,1.4rem)}.folio-cell.expanded{padding:16px}.folio-inner-title{font-size:1.3rem}.folio-logo-block{width:80px;height:80px}}@media (width<=330px){.folio-root{--edge:5px}.folio-hero-title{font-size:1.25rem}.folio-cell{aspect-ratio:3.333;padding:12px}.folio-cell-title{font-size:1.1rem}.folio-cell.expanded{padding:12px}.folio-logo-block{width:70px;height:70px}.folio-logo-name{font-size:.9rem}}.chat-canvas-container{background:var(--bg-card);border:1px solid var(--border-card);border-radius:12px;flex-direction:column;height:65vh;min-height:450px;max-height:700px;display:flex;overflow:hidden;box-shadow:0 4px 16px #00000014}.chat-messages{scroll-behavior:smooth;flex-direction:column;flex:1;gap:1.2rem;padding:1.5rem;display:flex;overflow-y:auto}.chat-bubble{max-width:85%;font-family:var(--font-body);border-radius:16px;padding:1rem 1.2rem;font-size:.95rem;line-height:1.6;animation:.4s cubic-bezier(.2,.8,.2,1) fadeIn}.chat-bubble.bot{color:var(--text-primary);background:#f5f5f5;border:1px solid #e8e8e8;border-bottom-left-radius:4px;align-self:flex-start}.chat-bubble.user{background:var(--text-primary);color:var(--bg);border-bottom-right-radius:4px;align-self:flex-end;font-weight:500}.chat-input-area{background:var(--btn-bg);border-top:1px solid var(--border-input);gap:.5rem;padding:1rem;display:flex}.chat-input{border:1px solid var(--border-input);color:var(--text-primary);font-family:var(--font-body);background:0 0;border-radius:24px;outline:none;flex:1;padding:.8rem 1.2rem;font-size:1rem;transition:border-color .2s}.chat-input:focus{border-color:var(--text-primary)}.chat-send-btn{background:var(--text-primary);color:var(--bg);cursor:pointer;border:none;border-radius:24px;padding:0 1.5rem;font-weight:700;transition:opacity .2s}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.chat-quick-replies{scrollbar-width:none;gap:.5rem;padding:0 1rem 1rem;display:flex;overflow-x:auto}.chat-quick-replies::-webkit-scrollbar{display:none}.quick-reply-btn{border:1px solid var(--border-card);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:#ffffff0d;border-radius:20px;padding:.6rem 1.2rem;font-size:.9rem;transition:all .2s}.quick-reply-btn:hover{color:var(--text-primary);border-color:var(--text-primary);background:#ffffff1a}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@media (width<=600px){.chat-canvas-container{border-radius:8px;height:calc(100dvh - 130px);min-height:420px;max-height:none}.chat-messages{gap:.9rem;padding:1rem}.chat-bubble{max-width:92%;padding:.8rem 1rem;font-size:.9rem}.chat-input{padding:.7rem 1rem;font-size:.95rem}.chat-input-area{padding:.75rem}.chat-send-btn{padding:0 1rem;font-size:.9rem}.quick-reply-btn{padding:.55rem 1rem;font-size:.85rem}}.typing-indicator{align-items:center;gap:5px;height:20px;padding:.5rem 0;display:flex}.typing-dot{background:var(--text-secondary);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite both typingBounce}.typing-dot:first-child{animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}@keyframes typingBounce{0%,80%,to{opacity:.4;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.location-placeholder::placeholder{color:#ccc;font-weight:400}.fp-root{box-sizing:border-box;scrollbar-width:none;-ms-overflow-style:none;background:#fa5134;flex-direction:column;width:100%;height:100vh;padding:10px;font-family:Exo,sans-serif;display:flex;position:relative;overflow:hidden}.fp-root::-webkit-scrollbar{display:none}.fp-back{cursor:pointer;z-index:10;opacity:.7;background:0 0;border:none;padding:8px;transition:opacity .3s;position:absolute;top:20px;left:20px}.fp-back:hover{opacity:1}.fp-header{align-items:baseline;gap:12px;padding:60px 20px 0;display:flex}.fp-num{color:#ffffff80;letter-spacing:.05em;font-size:clamp(.7rem,1.2vw,.9rem);font-weight:700}.fp-subtitle{color:#fff6;letter-spacing:.1em;text-transform:uppercase;font-size:clamp(.6rem,1vw,.8rem);font-weight:300}.fp-title{color:#fff;letter-spacing:-.03em;margin:0;padding:20px 20px 0;font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;line-height:1.05}.fp-desc{color:#ffffffbf;white-space:pre-line;max-width:500px;padding:24px 20px 0;font-size:clamp(.85rem,1.4vw,1.1rem);font-weight:300;line-height:1.7}.fp-bottom{align-items:flex-end;gap:10px;margin-top:auto;display:flex}.fp-accent-bar{flex:1;height:8px}.fp-center{flex-direction:column;justify-content:center;align-items:center;gap:24px;height:100vh;display:flex}@media (width<=768px){.fp-title{font-size:clamp(2rem,8vw,3rem)}.fp-desc{max-width:100%;font-size:clamp(.8rem,3vw,.95rem)}}@media (width<=480px){.fp-root{padding:8px}.fp-header{padding:50px 16px 0}.fp-title{padding:16px 16px 0;font-size:clamp(1.8rem,9vw,2.5rem)}.fp-desc{padding:16px 16px 0;font-size:clamp(.75rem,3.2vw,.9rem)}}.fc-root{background:#1a1a1a;flex-direction:column;width:100%;height:100dvh;font-family:Exo,sans-serif;display:flex;overflow:hidden}.fc-header{background:#111;border-bottom:1px solid #ffffff0f;flex-shrink:0;align-items:center;gap:12px;padding:12px 16px;display:flex}.fc-back{color:#ffffff80;cursor:pointer;background:0 0;border:none;align-items:center;padding:6px;transition:color .2s;display:flex}.fc-back:hover{color:#fa5134}.fc-header-info{align-items:baseline;gap:8px;display:flex}.fc-header-num{color:#fa5134;letter-spacing:.05em;font-size:.65rem;font-weight:700}.fc-header-title{color:#fff;letter-spacing:-.02em;font-size:.95rem;font-weight:700}.fc-header-sub{color:#ffffff4d;letter-spacing:.1em;text-transform:uppercase;margin-left:auto;font-size:.6rem;font-weight:300}.fc-chat-wrap{flex-direction:column;flex:1;padding:0;display:flex;overflow:hidden}.fc-chat-wrap .chat-canvas-container{height:100%!important;min-height:0!important;max-height:none!important;box-shadow:none!important;background:#1a1a1a!important;border:none!important;border-radius:0!important}.fc-chat-wrap .chat-messages{gap:10px;padding:16px}.fc-chat-wrap .chat-bubble.bot{border-bottom-left-radius:4px;font-family:Exo,sans-serif;font-size:.9rem;line-height:1.65;color:#ffffffe0!important;background:#2a2a2a!important;border:1px solid #ffffff0f!important}.fc-chat-wrap .chat-bubble.user{border-bottom-right-radius:4px;font-family:Exo,sans-serif;font-size:.9rem;font-weight:500;color:#fff!important;background:#fa5134!important;border:none!important}.fc-chat-wrap .chat-input-area{gap:8px;padding:10px 12px;background:#111!important;border-top:1px solid #ffffff0f!important}.fc-chat-wrap .chat-input{border-radius:20px;padding:10px 16px;font-family:Exo,sans-serif;font-size:.9rem;color:#fff!important;background:#2a2a2a!important;border:1px solid #ffffff1a!important}.fc-chat-wrap .chat-input::placeholder{color:#ffffff4d}.fc-chat-wrap .chat-input:focus{border-color:#fa5134!important}.fc-chat-wrap .chat-send-btn{letter-spacing:.02em;border-radius:20px;padding:0 20px;font-family:Exo,sans-serif;font-size:.85rem;font-weight:700;transition:opacity .2s,transform .2s;color:#fff!important;background:#fa5134!important}.fc-chat-wrap .chat-send-btn:hover:not(:disabled){transform:scale(1.03)}.fc-chat-wrap .chat-send-btn:disabled{opacity:.3!important}.fc-chat-wrap .chat-quick-replies{padding:0 12px 8px}.fc-chat-wrap .quick-reply-btn{border-radius:16px;padding:8px 14px;font-family:Exo,sans-serif;font-size:.8rem;transition:all .2s;color:#ffffffb3!important;background:#fa513414!important;border:1px solid #fa513440!important}.fc-chat-wrap .quick-reply-btn:hover{color:#fff!important;background:#fa513433!important;border-color:#fa5134!important}.fc-chat-wrap .typing-dot{background:#fa5134!important}.fc-chat-wrap .conv-input,.fc-chat-wrap input[type=number],.fc-chat-wrap input[type=text],.fc-chat-wrap .conv-select,.fc-chat-wrap select{border-radius:6px;color:#fff!important;background:#333!important;border:1px solid #ffffff26!important}.fc-chat-wrap .chat-messages::-webkit-scrollbar{width:4px}.fc-chat-wrap .chat-messages::-webkit-scrollbar-track{background:0 0}.fc-chat-wrap .chat-messages::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}@media (width>=769px){.fc-root{border-left:1px solid #ffffff0a;border-right:1px solid #ffffff0a;max-width:480px;margin:0 auto}.fc-chat-wrap .chat-bubble{max-width:80%}}@media (width<=480px){.fc-header{padding:10px 12px}.fc-header-title{font-size:.85rem}.fc-header-sub{display:none}.fc-chat-wrap .chat-messages{gap:8px;padding:12px}.fc-chat-wrap .chat-bubble{max-width:90%;padding:10px 12px;font-size:.85rem}.fc-chat-wrap .chat-input{padding:10px 14px;font-size:16px}.fc-chat-wrap .chat-input-area{padding:8px 10px;padding-bottom:max(8px, env(safe-area-inset-bottom))}.fc-chat-wrap .quick-reply-btn{padding:7px 12px;font-size:.75rem}}.omni-wizard{flex-direction:column;width:100%;padding:1.5rem;display:flex}.wizard-header{text-align:center;margin-bottom:1.5rem}.wizard-progress{justify-content:center;align-items:center;gap:.5rem;margin:1rem 0;display:flex}.progress-dot{background:var(--border-card);border-radius:50%;width:10px;height:10px;transition:all .3s}.progress-dot.active{background:var(--accent-color);box-shadow:0 0 10px var(--accent-color)}.progress-line{background:var(--border-card);width:40px;height:2px}.wizard-subtitle{color:var(--text-label);letter-spacing:.05em;font-size:.85rem}.wizard-body{flex:1}.mbti-grid{grid-template-columns:repeat(4,1fr);gap:.6rem;display:grid}.color-grid{grid-template-columns:repeat(2,1fr);gap:.6rem;display:grid}.mbti-btn,.color-btn{border:1px solid var(--border-line);color:var(--text-label);font-size:.85rem;font-family:var(--font-english);cursor:pointer;background:#ffffff05;border-radius:8px;justify-content:center;align-items:center;gap:.6rem;padding:.8rem;transition:all .3s cubic-bezier(.25,.46,.45,.94);display:flex}.mbti-btn:hover,.color-btn:hover{border-color:var(--text-primary);background:#ffffff0d;transform:translateY(-2px);box-shadow:0 4px 12px #a5737d1a}.mbti-btn.active,.color-btn.active{border-color:var(--text-primary);color:var(--bg);text-shadow:0 0 8px #a5737d66;background:#a5737d26;transform:translateY(-2px);box-shadow:0 4px 15px #a5737d40}.color-swatch{border:1px solid #ffffff4d;border-radius:50%;width:14px;height:14px;box-shadow:inset 0 2px 4px #00000080}.tarot-draw-container{justify-content:center;gap:1rem;display:flex}.tarot-card-slot{perspective:1000px;width:80px;height:120px}.tarot-card{cursor:pointer;width:100%;height:100%;transform-style:preserve-3d;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;transition:transform .6s;display:flex}.tarot-card.hidden{border:1px solid var(--border-card);background:linear-gradient(135deg,#1a1a1a,#0a0a0a)}.tarot-card.hidden:hover{border-color:var(--accent-color);box-shadow:0 0 15px #c9a84c33}.tarot-card.revealed{border:1px solid var(--accent-color);cursor:default;background:#111;animation:.6s ease-out flip}.tarot-card.revealed.reversed .card-inner{transform:rotate(180deg)}.card-inner{text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:.5rem;display:flex}.card-name{color:var(--text-primary);font-size:.7rem;font-family:var(--font-english)}.card-pos{color:var(--accent-color);text-transform:uppercase;letter-spacing:.05em;font-size:.6rem}@keyframes flip{0%{transform:rotateY(180deg)}to{transform:rotateY(0)}}@keyframes pulse{0%{box-shadow:0 0 #c9a84c66}70%{box-shadow:0 0 0 10px #c9a84c00}to{box-shadow:0 0 #c9a84c00}}
