/* Tema Matcha Latte: estetik "clean girl" — krem oat, hijau matcha, serif miring besar, label huruf kecil,
   lencana teks melingkar yang berputar, bingkai lengkung, tekstur kertas halus. Gambar: matcha/*.svg (digambar sendiri). */
:root{--page-bg:#e7e1d4;--bg:#f6f1e7;--surface:#fbf8f2;--ink:#2f3327;--muted:#7d7a6c;--accent:#6f8f4e;--accent-ink:#fff;--line:#e2dacb;--radius:28px;
--mt-oat:#ece4d4;--mt-susu:#fffdf8;--mt-muda:color-mix(in srgb,var(--accent) 16%,#f6f1e7);
--mt-lencana:url(matcha/lencana.svg);--mt-gelas:url(matcha/gelas.svg);--mt-daun:url(matcha/daun.svg);--mt-bintang:url(matcha/bintang.svg);
--mt-butir:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .3 0 0 0 0 .28 0 0 0 0 .2 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");
--cover-bg:var(--mt-butir),radial-gradient(80% 50% at 50% 0%,var(--mt-muda),transparent),var(--bg)}
.theme-matcha .nk-main{padding-bottom:86px;background:var(--mt-butir),var(--bg)}

/* Huruf */
.theme-matcha .nk-script{font-style:italic;font-weight:400;color:var(--ink);letter-spacing:-.02em;line-height:1}
.theme-matcha .nk-script span{font-style:italic;color:var(--accent);opacity:1;font-size:.75em}
.theme-matcha .nk-eyebrow{font:500 .66rem/1 var(--font-body);letter-spacing:.32em;color:var(--muted)}
.theme-matcha .nk-heading{font:italic 400 2.5rem/1 var(--font-display);color:var(--ink);letter-spacing:-.02em;margin-bottom:30px}
.theme-matcha .nk-heading::before{content:"";display:block;width:22px;height:22px;margin:0 auto 12px;background:var(--accent);-webkit-mask:var(--mt-bintang) center/contain no-repeat;mask:var(--mt-bintang) center/contain no-repeat}
.theme-matcha .nk-text{font-size:.95rem;line-height:1.8;color:var(--ink);font-weight:300}
.theme-matcha .nk-section{padding:64px 28px}

/* Tombol pil */
.theme-matcha .nk-btn{font:500 .78rem/1 var(--font-body);letter-spacing:.16em;text-transform:uppercase;padding:15px 30px;box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 30%,transparent)}
.theme-matcha .nk-btn-ghost{box-shadow:inset 0 0 0 1px var(--accent);background:transparent}

/* Sampul */
.theme-matcha .nk-cover{overflow:hidden}
.theme-matcha .nk-cover::before{content:"";position:absolute;top:7%;right:8%;width:112px;height:112px;background:var(--accent);-webkit-mask:var(--mt-lencana) center/contain no-repeat;mask:var(--mt-lencana) center/contain no-repeat;animation:mt-putar 18s linear infinite}
.theme-matcha .nk-cover::after{content:"";position:absolute;top:calc(7% + 36px);right:calc(8% + 36px);width:40px;height:40px;background:var(--accent);-webkit-mask:var(--mt-gelas) center/contain no-repeat;mask:var(--mt-gelas) center/contain no-repeat}
.theme-matcha .nk-cover-inner{position:relative;z-index:1;width:100%}
.theme-matcha .nk-cover-inner::before{content:"";display:block;width:180px;height:220px;margin:0 auto 22px;border-radius:999px 999px 0 0;background:linear-gradient(180deg,var(--mt-muda),var(--mt-oat));box-shadow:inset 0 0 0 1px var(--line);-webkit-mask:linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0)}
.theme-matcha .nk-cover-inner::after{content:"";position:absolute;top:40px;left:50%;width:120px;height:150px;translate:-50% 0;background:var(--accent);-webkit-mask:var(--mt-daun) center/contain no-repeat;mask:var(--mt-daun) center/contain no-repeat;opacity:.85}
.theme-matcha .nk-cover h1{font-size:3.5rem;margin:12px 0}
.theme-matcha .nk-date{font:400 .82rem/1 var(--font-body);letter-spacing:.26em;text-transform:uppercase;color:var(--muted)}
.theme-matcha .nk-to{border:0;padding:0;margin-bottom:26px}
.theme-matcha .nk-to p{font-size:.78rem}
.theme-matcha .nk-to .nk-guest{font:italic 400 1.7rem/1.2 var(--font-display);color:var(--ink)}

/* Beranda */
.theme-matcha .nk-hero{position:relative}
.theme-matcha .nk-hero-photo{position:relative;width:250px;height:330px;border-radius:999px 999px 0 0;border:0;box-shadow:none;overflow:visible}
.theme-matcha .nk-hero-photo img{border-radius:999px 999px 0 0}
.theme-matcha .nk-hero-photo::after{content:"";position:absolute;right:-34px;bottom:-30px;width:100px;height:100px;background:var(--accent);-webkit-mask:var(--mt-lencana) center/contain no-repeat;mask:var(--mt-lencana) center/contain no-repeat;animation:mt-putar 18s linear infinite}
.theme-matcha .nk-hero:not(:has(.nk-hero-photo))::before{content:"";order:-1;display:block;width:140px;height:140px;margin:0 auto 28px;background:var(--accent);-webkit-mask:var(--mt-lencana) center/contain no-repeat;mask:var(--mt-lencana) center/contain no-repeat;animation:mt-putar 18s linear infinite}
.theme-matcha .nk-big{font-size:3.4rem;margin-top:6px}
.theme-matcha .nk-countdown{gap:0;margin-top:30px;border-block:1px solid var(--line)}
.theme-matcha .nk-countdown div{background:none;border:0;border-radius:0;width:25%;max-width:80px;padding:14px 0}
.theme-matcha .nk-countdown div+div{border-left:1px solid var(--line)}
.theme-matcha .nk-countdown b{font:italic 400 2rem/1 var(--font-display);color:var(--ink)}
.theme-matcha .nk-countdown small{font-size:.58rem;letter-spacing:.2em}

/* Save the date */
.theme-matcha .nk-savedate{background:var(--mt-muda)}
.theme-matcha .nk-bunting{display:none}
.theme-matcha .nk-calendar{max-width:320px;margin:0 auto;padding:24px 18px;background:var(--mt-susu);border-radius:30px;box-shadow:0 20px 40px rgba(60,60,30,.08)}
.theme-matcha .nk-cal-month{font:italic 400 1.6rem/1 var(--font-display);margin:0 0 14px}
.theme-matcha .nk-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px 0;font-size:.85rem;font-weight:300}
.theme-matcha .nk-cal-grid b{font:500 .58rem/2.4 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.theme-matcha .nk-cal-grid span{line-height:32px;position:relative;z-index:0}
.theme-matcha .nk-cal-day{color:var(--accent-ink)!important;font-weight:600}
.theme-matcha .nk-cal-day::before{content:"";position:absolute;left:50%;top:50%;width:34px;height:34px;translate:-50% -50%;border-radius:50%;z-index:-1;background:var(--accent)}

/* Mempelai */
.theme-matcha .nk-ornament{width:30px;height:40px;background:var(--accent);-webkit-mask:var(--mt-daun) center/contain no-repeat;mask:var(--mt-daun) center/contain no-repeat}
.theme-matcha .nk-couple{gap:4px}
.theme-matcha .nk-person h3{font-size:2.5rem;font-style:italic}
.theme-matcha .nk-person p{font-size:.85rem;font-weight:300;letter-spacing:.02em}
.theme-matcha .nk-amp{font-size:3.6rem;color:var(--accent);font-style:italic}

/* Kartu */
.theme-matcha .nk-card{background:var(--mt-susu);border:0;border-radius:var(--radius);padding:30px 22px;box-shadow:0 18px 40px rgba(60,60,30,.07)}
.theme-matcha .nk-card h3{font:italic 400 2rem/1 var(--font-display);color:var(--ink);margin-bottom:14px}
.theme-matcha .nk-card h3::after{content:"";display:block;width:36px;height:1px;background:var(--accent);margin:14px auto 0}
.theme-matcha .nk-card p{font-size:.92rem}
.theme-matcha .nk-strong{font-weight:600}
.theme-matcha .nk-gift{background:var(--mt-muda)}
.theme-matcha .nk-number{font:400 1.6rem/1 var(--font-display)!important;letter-spacing:.06em}

/* Galeri: lengkung & bulat */
.theme-matcha .nk-gallery{gap:10px}
.theme-matcha .nk-photo{border-radius:20px}
.theme-matcha .nk-photo:first-child{border-radius:999px 999px 20px 20px;aspect-ratio:4/4.4}
.theme-matcha .nk-photo:nth-child(3){border-radius:999px}
.theme-matcha .nk-yt{border-radius:24px}

/* Form & ucapan */
.theme-matcha .nk-form input,.theme-matcha .nk-form select,.theme-matcha .nk-form textarea{background:var(--mt-susu);border:1px solid var(--line);border-radius:18px;font-weight:300}
.theme-matcha .nk-form input:focus,.theme-matcha .nk-form select:focus,.theme-matcha .nk-form textarea:focus{outline:0;border-color:var(--accent)}
.theme-matcha .nk-msg{background:var(--mt-susu);border:0;border-radius:20px;padding:14px 16px}
.theme-matcha .nk-msg .nk-strong{font:italic 400 1.2rem/1.2 var(--font-display)}
.theme-matcha .nk-msg small{font-family:var(--font-body);font-style:normal;background:var(--mt-muda);color:var(--accent);border-radius:999px;padding:2px 8px}

/* Penutup */
.theme-matcha .nk-closing{background:var(--mt-oat);border-radius:40px 40px 0 0}
.theme-matcha .nk-closing::after{content:"";display:block;width:110px;height:110px;margin:30px auto 0;background:var(--accent);-webkit-mask:var(--mt-lencana) center/contain no-repeat;mask:var(--mt-lencana) center/contain no-repeat;animation:mt-putar 18s linear infinite}
.theme-matcha .nk-footer{background:var(--mt-oat);letter-spacing:.1em}
.theme-matcha .nk-footer a{color:var(--ink)}

/* Pemutar lagu */
.theme-matcha .nk-player{display:flex;align-items:center;gap:12px;width:100%;max-width:290px;margin:28px auto 0;padding:8px 16px 8px 8px;cursor:pointer;text-align:left;background:var(--mt-susu);border:1px solid var(--line);border-radius:999px;font:inherit;color:var(--ink)}
.theme-matcha .nk-player-icon{flex:none;width:42px;height:42px;border-radius:50%;background:var(--accent);position:relative}
.theme-matcha .nk-player-icon::before{content:"";position:absolute;left:16px;top:13px;border-style:solid;border-width:8px 0 8px 12px;border-color:transparent transparent transparent var(--accent-ink)}
.theme-matcha:has(.nk-music.nk-playing) .nk-player-icon::before{left:14px;top:13px;width:4px;height:16px;border:0;background:var(--accent-ink);box-shadow:8px 0 0 var(--accent-ink)}
.theme-matcha .nk-player-text{flex:1;display:flex;flex-direction:column}
.theme-matcha .nk-player-text b{font:italic 400 1.2rem/1.1 var(--font-display)}
.theme-matcha .nk-player-text small{font-size:.66rem;color:var(--muted);letter-spacing:.08em}
.theme-matcha .nk-player-wave{display:flex;align-items:center;gap:3px;height:22px}
.theme-matcha .nk-player-wave i{width:3px;height:10px;border-radius:3px;background:var(--accent)}
.theme-matcha:has(.nk-music.nk-playing) .nk-player-wave i{animation:mt-eq .8s ease-in-out infinite alternate}
.theme-matcha .nk-player-wave i:nth-child(2){height:16px;animation-delay:.2s!important}.theme-matcha .nk-player-wave i:nth-child(3){height:20px;animation-delay:.4s!important}.theme-matcha .nk-player-wave i:nth-child(4){height:12px;animation-delay:.1s!important}

/* Musik & menu */
.theme-matcha .nk-music{bottom:86px}
.theme-matcha:not(.nk-locked) .nk-nav{display:flex}
.theme-matcha .nk-nav{background:color-mix(in srgb,var(--mt-susu) 88%,transparent);border-color:var(--line);box-shadow:0 12px 30px rgba(60,60,30,.12)}
.theme-matcha .nk-nav a{font-weight:500;letter-spacing:.08em}
.theme-matcha .nk-nav a:hover,.theme-matcha .nk-nav a:focus-visible{color:var(--accent-ink);background:var(--accent)}

@keyframes mt-putar{to{rotate:360deg}}
@keyframes mt-eq{from{scale:1 .4}to{scale:1 1}}
@media (prefers-reduced-motion:reduce){.theme-matcha *,.theme-matcha *::before,.theme-matcha *::after{animation:none!important}}
