:root{font-family:'Noto Sans KR',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:#1e293b;background:#fdfbf7}
*{box-sizing:border-box}
body{margin:0}
a{color:inherit}
.public-page{min-height:100vh;background:radial-gradient(circle at 20% 5%,#eff6ff 0,transparent 35%),#fdfbf7}
.public-header{max-width:900px;margin:auto;padding:22px 24px 12px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{font-size:21px;font-weight:900;text-decoration:none;color:#17203b}
.public-nav{display:flex;flex-wrap:wrap;gap:9px 18px;font-size:12px;font-weight:700;color:#52627d}
.public-nav a,.public-footer a{text-decoration:none}
.public-nav a:hover,.public-footer a:hover{text-decoration:underline;color:#4338ca}
.public-main{max-width:760px;margin:0 auto;padding:30px 24px 65px}
.eyebrow,.card-kicker{margin:0 0 8px;color:#6366f1;font-size:11px;font-weight:900;letter-spacing:.12em}
.public-main h1{margin:0;color:#17203b;font-size:clamp(26px,5vw,38px);line-height:1.3;letter-spacing:-.04em;word-break:keep-all}
.lead{margin:15px 0 26px;color:#52627d;font-size:15px;line-height:1.8;word-break:keep-all}
.public-main--today>.lead{max-width:560px;margin-bottom:0}
.daily-invite{position:relative;overflow:hidden;margin-top:24px;padding:30px;border:1px solid #e9e1f5;border-radius:30px;background:radial-gradient(circle at 98% 0%,#ffe3ee 0,transparent 34%),linear-gradient(145deg,#f0edff 0%,#f8f4ff 48%,#fff9f4 100%);box-shadow:0 20px 42px rgba(66,58,115,.1)}
.daily-invite:before{position:absolute;top:-90px;right:-35px;width:230px;height:230px;border:1px solid rgba(255,255,255,.85);border-radius:50%;content:'';pointer-events:none}
.daily-invite>*{position:relative}
.daily-invite-kicker{margin:0 0 11px;color:#6653a9;font-size:11px;font-weight:900;letter-spacing:.07em}
.daily-invite h2{margin:0;color:#22213e;font-size:clamp(23px,4vw,31px);line-height:1.42;letter-spacing:-.045em;word-break:keep-all}
.daily-invite-copy{max-width:485px;margin:15px 0 0;color:#5b5972;font-size:13px;line-height:1.8;word-break:keep-all}
.daily-face-line{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:23px}
.daily-face{min-width:0;padding:7px 5px 8px;border:1px solid rgba(255,255,255,.9);border-radius:18px;background:rgba(255,255,255,.7);box-shadow:0 7px 18px rgba(79,69,128,.07);text-align:center}
.daily-face-portrait{position:relative;display:block;overflow:hidden;border-radius:14px}
.daily-face-portrait img{display:block;width:100%;height:72px;object-fit:contain;mix-blend-mode:multiply;filter:blur(1.8px) saturate(.85);opacity:.88;transform:scale(.94)}
.daily-face-question{position:absolute;top:3px;right:3px;display:grid;width:23px;height:23px;place-items:center;border:1px solid #e8e2f9;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 3px 12px rgba(62,53,108,.14);color:#514987;font-size:16px;font-weight:900;line-height:1}
.daily-face-label{display:block;margin-top:3px;color:#39415b;font-size:11px;font-weight:900}
.daily-invite-hint{margin:13px 0 0;color:#716d83;font-size:11px;line-height:1.6;word-break:keep-all}
.daily-invite-cta{display:flex;align-items:center;justify-content:center;gap:12px;min-height:53px;margin-top:20px;padding:12px 16px;border-radius:15px;background:#22243b;color:#fff;font-size:15px;font-weight:900;text-decoration:none;box-shadow:0 10px 19px rgba(34,36,59,.18);transition:transform .18s,background .18s}
.daily-invite-cta:hover{background:#3b365e;transform:translateY(-2px)}
.daily-invite-cta:focus-visible{outline:3px solid #7467e9;outline-offset:3px}
.daily-invite-cta span{font-size:19px;line-height:1}
.daily-invite-foot{margin:10px 0 0;color:#6e6884;font-size:11px;font-weight:700;text-align:center}
.daily-reading-intro{margin:46px 0 18px}
.daily-reading-intro h2{margin:0;color:#172033;font-size:23px;line-height:1.4;letter-spacing:-.035em;word-break:keep-all}
.daily-reading-intro>p:last-child{margin:10px 0 0;color:#66738b;font-size:12px;line-height:1.75;word-break:keep-all}
.public-main--weekly>.lead{max-width:560px;margin-bottom:0}
.weekly-invite{position:relative;overflow:hidden;margin-top:24px;padding:31px;border:1px solid #7c83c3;border-radius:30px;background:radial-gradient(circle at 95% 9%,rgba(177,190,255,.43) 0,transparent 39%),linear-gradient(145deg,#252b55 0%,#3e437b 60%,#645490 100%);box-shadow:0 20px 44px rgba(35,40,90,.19)}
.weekly-invite:before{position:absolute;right:-76px;top:-115px;width:280px;height:280px;border:1px solid rgba(255,255,255,.19);border-radius:50%;content:'';pointer-events:none}
.weekly-invite:after{position:absolute;right:-28px;top:-65px;width:180px;height:180px;border:1px solid rgba(255,255,255,.13);border-radius:50%;content:'';pointer-events:none}
.weekly-invite>*{position:relative;z-index:1}
.weekly-invite-kicker{margin:0 0 11px;color:#c9d5ff;font-size:11px;font-weight:900;letter-spacing:.08em}
.weekly-invite h2{margin:0;color:#fff;font-size:clamp(24px,4.5vw,32px);line-height:1.42;letter-spacing:-.045em;word-break:keep-all}
.weekly-invite-copy{max-width:485px;margin:14px 0 0;color:#e1e5fb;font-size:13px;line-height:1.8;word-break:keep-all}
.weekly-mystery-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin:26px 0 0;padding:0;list-style:none}
.weekly-mystery-days li{display:flex;min-width:0;height:78px;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(255,255,255,.22);border-radius:14px;background:rgba(255,255,255,.12);box-shadow:0 7px 17px rgba(21,25,68,.1)}
.weekly-mystery-days li:nth-child(4){background:rgba(255,255,255,.2);transform:translateY(-5px)}
.weekly-mystery-days li span{color:#e7e9ff;font-size:11px;font-weight:900}
.weekly-mystery-days li b{display:grid;width:27px;height:27px;place-items:center;border-radius:50%;background:#fff;color:#55558e;font-size:18px;line-height:1}
.weekly-invite-hint{margin:18px 0 0;color:#d5d8f5;font-size:11px;line-height:1.7;word-break:keep-all}
.weekly-invite-cta{display:flex;min-height:53px;align-items:center;justify-content:center;gap:10px;margin-top:20px;padding:12px 15px;border-radius:15px;background:#fff;color:#282b5c;font-size:15px;font-weight:900;text-decoration:none;box-shadow:0 10px 18px rgba(21,25,68,.16);transition:transform .18s,background .18s}
.weekly-invite-cta:hover{background:#eef0ff;transform:translateY(-2px)}
.weekly-invite-cta:focus-visible{outline:3px solid #fff;outline-offset:3px}
.weekly-invite-cta span{font-size:19px;line-height:1}
.weekly-invite-foot{margin:11px 0 0;color:#dbdefa;font-size:11px;font-weight:700;text-align:center}
.weekly-reading-intro{margin:47px 0 19px}
.weekly-reading-intro h2{margin:0;color:#172033;font-size:23px;line-height:1.4;letter-spacing:-.035em;word-break:keep-all}
.weekly-reading-intro>p:last-child{margin:10px 0 0;color:#66738b;font-size:12px;line-height:1.75;word-break:keep-all}
.public-main--monthly>.lead{max-width:560px;margin-bottom:0}
.monthly-invite{position:relative;overflow:hidden;margin-top:24px;padding:31px;border:1px solid #f2d9b5;border-radius:30px;background:radial-gradient(circle at 97% 0%,#ffe1aa 0,transparent 35%),linear-gradient(150deg,#fff3de 0%,#fff9ef 56%,#fffdf8 100%);box-shadow:0 20px 43px rgba(132,87,38,.11)}
.monthly-invite:before{position:absolute;top:-87px;right:-79px;width:235px;height:235px;border:1px solid rgba(201,138,72,.22);border-radius:50%;content:'';pointer-events:none}
.monthly-invite:after{position:absolute;top:-39px;right:-31px;width:140px;height:140px;border:1px solid rgba(201,138,72,.19);border-radius:50%;content:'';pointer-events:none}
.monthly-invite>*{position:relative;z-index:1}
.monthly-invite-kicker{margin:0 0 11px;color:#a9663b;font-size:11px;font-weight:900;letter-spacing:.08em}
.monthly-invite-heading{display:flex;align-items:flex-start;gap:15px}
.monthly-invite-heading>div{flex:1;min-width:0}
.monthly-invite h2{margin:0;color:#392d35;font-size:clamp(24px,4.3vw,31px);line-height:1.42;letter-spacing:-.045em;word-break:keep-all}
.monthly-invite-heading p{max-width:440px;margin:14px 0 0;color:#755f5b;font-size:13px;line-height:1.8;word-break:keep-all}
.monthly-invite-seal{display:grid;flex:none;width:76px;height:76px;place-items:center;margin-top:3px;border:1px solid #efc98d;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fffdf7,#fbe2b6);box-shadow:inset 0 0 0 6px rgba(255,255,255,.58),0 9px 20px rgba(151,91,40,.12);color:#ae734a;font-size:40px;font-weight:700;font-family:Georgia,serif;transform:rotate(12deg)}
.monthly-mystery{display:grid;gap:8px;margin-top:24px}
.monthly-mystery>div{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:8px 13px 8px 16px;border:1px solid #f0ddc7;border-radius:13px;background:rgba(255,255,255,.69)}
.monthly-mystery span{color:#664f51;font-size:12px;font-weight:900}
.monthly-mystery b{display:grid;width:26px;height:26px;place-items:center;border-radius:50%;background:#f7e6ce;color:#a66c47;font-size:16px;line-height:1}
.monthly-invite-hint{margin:16px 0 0;color:#887571;font-size:11px;line-height:1.65;word-break:keep-all}
.monthly-invite-cta{display:flex;align-items:center;justify-content:center;gap:10px;min-height:53px;margin-top:20px;padding:12px 15px;border-radius:15px;background:#4a3443;color:#fff;font-size:15px;font-weight:900;text-decoration:none;box-shadow:0 10px 20px rgba(74,52,67,.17);transition:transform .18s,background .18s}
.monthly-invite-cta:hover{background:#674658;transform:translateY(-2px)}
.monthly-invite-cta:focus-visible{outline:3px solid #a35d4f;outline-offset:3px}
.monthly-invite-cta span{font-size:19px;line-height:1}
.monthly-invite-foot{margin:11px 0 0;color:#857270;font-size:11px;font-weight:700;text-align:center}
.monthly-reading-intro{margin:47px 0 19px}
.monthly-reading-intro h2{margin:0;color:#172033;font-size:23px;line-height:1.4;letter-spacing:-.035em;word-break:keep-all}
.monthly-reading-intro>p:last-child{margin:10px 0 0;color:#66738b;font-size:12px;line-height:1.75;word-break:keep-all}
.example-kicker{margin:0 0 9px;color:#5d6fa6;font-size:11px;font-weight:900;letter-spacing:.09em}
.example-hero{position:relative;display:flex;align-items:center;gap:25px;overflow:hidden;padding:30px;border:1px solid #e7e5f3;border-radius:30px;box-shadow:0 16px 40px rgba(44,56,104,.07)}
.example-hero:after{position:absolute;right:-55px;bottom:-95px;width:240px;height:240px;border:1px solid rgba(255,255,255,.75);border-radius:50%;content:'';pointer-events:none}
.example-hero--love{background:linear-gradient(130deg,#fff0f3 0%,#fff9fa 65%,#fff 100%);border-color:#f5dfe8}
.example-hero--weekly{background:linear-gradient(135deg,#eaf0ff 0%,#f6f5ff 62%,#fff 100%);border-color:#dce4fb}
.example-hero--monthly{background:linear-gradient(135deg,#fff2d9 0%,#fff8ec 62%,#fff 100%);border-color:#f1e1bd}
.example-hero-copy{position:relative;z-index:1;flex:1;min-width:0}
.example-hero h2{margin:0;color:#172033;font-size:clamp(25px,4.2vw,35px);line-height:1.38;letter-spacing:-.045em;word-break:keep-all}
.example-hero-copy>p:not(.example-kicker):not(.example-hero-action):not(.example-face-bridge){margin:17px 0 0;color:#4d5a72;font-size:14px;line-height:1.85;word-break:keep-all}
.example-hero-copy>.example-face-bridge{margin:17px 0 0;padding-left:11px;border-left:2px solid #e9aabd;color:#8c4d64;font-size:12px;font-weight:800;line-height:1.7;word-break:keep-all}
.example-hero-action{display:flex;align-items:baseline;gap:9px;margin:21px 0 0;padding:13px 15px;border-radius:15px;background:rgba(255,255,255,.78);color:#334155;font-size:12px;line-height:1.7;word-break:keep-all}
.example-hero-action strong,.example-topic-action strong{flex:none;color:#334155;font-size:11px;font-weight:900}
.example-hero-face{position:relative;z-index:1;flex:none;width:165px;margin:0;text-align:center}
.example-hero-face img{display:block;width:100%;height:auto;border-radius:25px;mix-blend-mode:multiply}
.example-hero-face figcaption{margin-top:4px;color:#9f5067;font-size:10px;font-weight:800;line-height:1.45;word-break:keep-all}
.example-section{margin-top:40px}
.example-section>h2{margin:0 0 16px;color:#172033;font-size:22px;line-height:1.4;letter-spacing:-.035em}
.example-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.example-face-card,.example-topic-card{min-width:0;padding:19px;border:1px solid #e8eaf1;border-radius:22px;background:#fff;box-shadow:0 9px 27px rgba(30,41,59,.04)}
.example-face-card--money{background:linear-gradient(150deg,#fffaf0,#fff 65%)}
.example-face-card--main{background:linear-gradient(150deg,#f4f9ff,#fff 65%)}
.example-face-card--pressure{background:linear-gradient(150deg,#f5fbf9,#fff 65%)}
.example-face-card--opportunity{background:linear-gradient(150deg,#f2f8ff,#fff 65%)}
.example-face-heading{display:flex;align-items:flex-start;gap:6px}
.example-face-heading>div{flex:1;min-width:0}
.example-face-figure{flex:none;width:90px;margin:0;text-align:center}
.example-face-figure img{display:block;width:76px;height:76px;margin:0 auto;object-fit:contain;border-radius:18px;mix-blend-mode:multiply}
.example-face-figure figcaption{margin-top:3px;color:#6c6f86;font-size:10px;font-weight:800;line-height:1.4;word-break:keep-all}
.example-face-card h3,.example-topic-card h3{margin:0;color:#202a42;font-size:17px;line-height:1.5;letter-spacing:-.025em;word-break:keep-all}
.example-face-card>p,.example-topic-card>p:not(.example-kicker):not(.example-topic-action){margin:12px 0 0;color:#536078;font-size:13px;line-height:1.8;word-break:keep-all}
.example-face-card>.example-face-bridge{margin-top:16px;padding:11px 13px;border-radius:13px;background:#f5f6fc;color:#3d4964;font-size:12px;font-weight:800;line-height:1.7}
.example-face-card>.example-face-bridge+p{margin-top:10px}
.example-more{margin-top:15px;padding-top:12px;border-top:1px solid #e9ecf2;color:#52627d;font-size:12px;line-height:1.75}
.example-more summary{cursor:pointer;color:#4f46e5;font-weight:800}
.example-more p{margin:10px 0 0;word-break:keep-all}
.example-more strong{display:block;color:#334155}
.example-timing{margin-top:16px;padding:18px 21px;border-left:3px solid #8b91dc;border-radius:0 17px 17px 0;background:#f5f6ff}
.example-timing p:last-child{margin:0;color:#495772;font-size:13px;line-height:1.8;word-break:keep-all}
.example-weekstrip{display:grid;grid-template-columns:repeat(7,minmax(84px,1fr));gap:7px;overflow-x:auto;margin:0;padding:0 0 7px;list-style:none}
.example-weekstrip li{min-height:81px;padding:11px 9px;border:1px solid #e4e9f3;border-radius:14px;background:#f8faff}
.example-weekstrip span{display:block;margin-bottom:9px;color:#6b78a0;font-size:11px;font-weight:800}
.example-weekstrip strong{display:block;color:#24324e;font-size:12px;line-height:1.4;word-break:keep-all}
.example-topic-action{display:flex;flex-direction:column;gap:5px;margin:16px 0 0;padding:12px 14px;border-radius:14px;background:#f5f6fb;color:#46546c;font-size:12px;line-height:1.7;word-break:keep-all}
.example-month-action{margin-top:14px;padding:21px 23px;border-radius:22px;background:#263247;color:#fff}
.example-month-action strong{color:#fbd98c;font-size:11px;font-weight:900;letter-spacing:.08em}
.example-month-action p{margin:8px 0 0;font-size:15px;font-weight:700;line-height:1.7;word-break:keep-all}
.public-card{margin:14px 0;padding:23px 25px;border:1px solid #e7eaf1;border-radius:24px;background:#fff;box-shadow:0 12px 32px rgba(15,23,42,.045)}
.public-card.featured{border-color:#c7d2fe;background:#f8faff}
.public-card h2{margin:0 0 12px;color:#1e293b;font-size:19px;line-height:1.5;letter-spacing:-.025em}
.public-card p{margin:8px 0;color:#46556f;font-size:14px;line-height:1.9;word-break:keep-all}
.public-card .reading-title{font-size:17px;color:#182743;font-weight:800}
.card-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}
.card-heading h2{margin-bottom:0}
.score{border-radius:999px;padding:4px 10px;background:#eef2ff;color:#4f46e5;font-size:11px;font-weight:800;white-space:nowrap}
.public-card .reading-note{margin-top:15px;padding-top:12px;border-top:1px solid #edf0f5;font-size:13px}
.reading-note strong{color:#334155;margin-right:6px}
.link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:19px}
.link-grid a{padding:12px 10px;border:1px solid #dbe3f4;border-radius:12px;background:#f8faff;color:#354b91;font-size:12px;font-weight:800;text-decoration:none;text-align:center}
.link-grid a:hover{border-color:#818cf8}
.sample-disclaimer{margin:25px 0;color:#64748b;font-size:12px;line-height:1.8;word-break:keep-all}
.primary-link{display:inline-flex;align-items:center;gap:12px;border-radius:14px;padding:14px 19px;background:#172033;color:#fff;font-size:14px;font-weight:800;text-decoration:none}
.primary-link:hover{background:#343b67}
.public-footer{max-width:760px;margin:0 auto;padding:26px 24px 50px;border-top:1px solid #e2e8f0;color:#64748b;font-size:11px;line-height:1.7}
.public-footer nav{display:flex;flex-wrap:wrap;gap:10px 18px;font-weight:800}
.public-footer p{margin:7px 0}
.static-legal{min-height:100vh;background:#fdfbf7}
.static-legal main{max-width:880px;margin:auto;padding:0 20px 50px}
.static-legal header{position:sticky;top:0;z-index:2;background:rgba(253,251,247,.96);border-bottom:1px solid #e2e8f0}
.static-legal header>div{display:flex;align-items:center;gap:12px;padding:18px 4px}
.static-legal header a{display:inline-flex;width:35px;height:35px;align-items:center;justify-content:center;border:1px solid #e2e8f0;border-radius:50%;background:#fff}
.static-legal header svg{width:20px;height:20px}
.static-legal header p{margin:0 0 2px;color:#6366f1;font-size:10px;font-weight:900;letter-spacing:.16em}
.static-legal h1{margin:0;color:#172033;font-size:21px}
.static-legal article{padding:28px 4px}
.static-legal article>div:first-child{padding:24px;background:#fff;border:1px solid #e7eaf1;border-radius:24px;box-shadow:0 12px 32px rgba(15,23,42,.045)}
.static-legal article p,.static-legal article li{color:#46556f;font-size:13px;line-height:1.85;word-break:keep-all}
.static-legal article section{margin-top:30px}
.static-legal article section h2{margin:0 0 10px;color:#1e293b;font-size:17px}
.static-legal article a{color:#4f46e5}
.static-legal article table{border-collapse:collapse;width:100%;min-width:520px;font-size:12px;line-height:1.6}
.static-legal article table th,.static-legal article table td{padding:11px;border:1px solid #e2e8f0;text-align:left;vertical-align:top}
.static-legal article table th{background:#f8fafc;color:#334155}
.static-legal .overflow-x-auto{overflow-x:auto}
.static-legal footer{padding-top:22px;border-top:1px solid #e2e8f0}
.static-legal footer nav{display:flex;flex-wrap:wrap;gap:10px 16px;font-size:11px;font-weight:800}
.static-legal footer>div{margin-top:14px}
.static-legal footer p{margin:5px 0;color:#64748b;font-size:11px}
.public-fallback{max-width:700px;margin:0 auto;padding:18px 22px 26px;color:#475569;font-size:14px;line-height:1.8}
.public-fallback h1{font-size:22px;line-height:1.4;color:#172033}
.public-fallback nav{display:flex;gap:14px;flex-wrap:wrap}
.public-fallback a{color:#4f46e5;font-weight:800}
@media(max-width:620px){.public-header{align-items:flex-start;flex-direction:column;padding-bottom:4px}.public-nav{gap:8px 14px}.public-main{padding-top:22px}.public-card{padding:20px}.link-grid,.example-card-grid{grid-template-columns:1fr}.example-hero{padding:24px}.example-hero--love{display:block}.example-hero--love .example-hero-face{position:absolute;top:20px;right:13px;width:95px}.example-hero--love h2{padding-right:84px;font-size:25px}.example-hero-copy>p:not(.example-kicker):not(.example-hero-action):not(.example-face-bridge){font-size:13px}.example-hero-action{display:block}.example-hero-action strong{display:block;margin-bottom:4px}.example-weekstrip{grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible}.static-legal main{padding:0 12px 40px}.static-legal article>div:first-child{padding:19px}.static-legal article table{min-width:440px}}
@media(max-width:620px){.daily-invite{padding:25px 18px}.daily-invite h2{font-size:24px}.daily-face-line{gap:5px}.daily-face{padding:5px 3px 7px;border-radius:14px}.daily-face-portrait img{height:57px}.daily-face-question{width:21px;height:21px;font-size:15px}.daily-face-label{font-size:10px}.daily-reading-intro{margin-top:40px}.daily-reading-intro h2{font-size:21px}}
@media(max-width:620px){.weekly-invite{padding:25px 18px}.weekly-invite h2{font-size:25px}.weekly-mystery-days{gap:5px}.weekly-mystery-days li{height:67px;border-radius:11px}.weekly-mystery-days li b{width:24px;height:24px;font-size:16px}.weekly-reading-intro{margin-top:40px}.weekly-reading-intro h2{font-size:21px}}
@media(max-width:620px){.monthly-invite{padding:25px 18px}.monthly-invite h2{font-size:24px}.monthly-invite-seal{width:54px;height:54px;box-shadow:inset 0 0 0 4px rgba(255,255,255,.58),0 9px 20px rgba(151,91,40,.12);font-size:30px}.monthly-reading-intro{margin-top:40px}.monthly-reading-intro h2{font-size:21px}}
