*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17211b;background:#fff}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);border-bottom:1px solid #edf0ed;background:rgba(255,255,255,.94);position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}.nav nav{display:flex;align-items:center;gap:22px}.brand{font-weight:900;font-size:24px;letter-spacing:-1px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 17px;border:0;border-radius:12px;background:#172f24;color:#fff;font-weight:800;cursor:pointer}.btn.ghost{background:#fff;color:#17211b;border:1px solid #dfe7e1}.btn.publish{background:#2f6d46}.btn.big{padding:14px 20px}.btn.full{width:100%;margin-top:8px}.hero{min-height:650px;display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center;padding:70px max(7vw,30px);background:linear-gradient(180deg,#f7fbf7,#fff)}.hero h1{font-size:clamp(44px,6vw,78px);line-height:.98;letter-spacing:-4px;margin:20px 0;max-width:850px}.hero p{font-size:19px;line-height:1.7;color:#5d6861;max-width:680px}.badge,.eyebrow{font-size:12px;font-weight:900;letter-spacing:1.4px;text-transform:uppercase;color:#51745f}.actions{display:flex;gap:12px;margin-top:30px}.phone-card{display:flex;justify-content:center}.mock-invite{width:330px;min-height:530px;border-radius:38px;padding:60px 28px;display:flex;flex-direction:column;justify-content:center;text-align:center;box-shadow:0 30px 80px rgba(26,47,36,.16);background:radial-gradient(circle at top,#eef6ea,#dbe8df 45%,#b6cbbd);border:10px solid #fff}.mock-invite h2{font-family:Georgia,serif;font-size:45px;margin:14px 0}.mock-invite button{border:0;border-radius:999px;padding:12px 20px;background:#fff}.section{padding:90px max(7vw,30px)}.section.soft{background:#f6f8f6}.section h2,.dash-title h1{font-size:38px;letter-spacing:-1.8px;margin:8px 0 18px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:30px}.card{border:1px solid #e3e8e4;border-radius:22px;padding:18px;background:#fff}.theme-thumb{height:190px;border-radius:16px;background:linear-gradient(135deg,#e2ecdf,#c7d6ca)}.card h3{font-size:20px;margin-bottom:6px}.card p{color:#68736c}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}.steps>div{background:#fff;border:1px solid #e2e7e3;padding:24px;border-radius:18px}.steps b{width:34px;height:34px;border-radius:10px;background:#e6efe8;display:grid;place-items:center}footer{padding:35px;text-align:center;color:#768078;border-top:1px solid #edf0ed}.auth-bg,.dash-bg{background:#f5f7f5;min-height:100vh}.auth-shell{max-width:470px;margin:0 auto;padding:50px 22px}.auth-shell>.brand{display:block;text-align:center;margin-bottom:24px}.auth-card,.panel{background:#fff;border:1px solid #e0e6e1;border-radius:22px;padding:28px;box-shadow:0 14px 50px rgba(28,44,34,.05)}.auth-card h1{margin:0 0 8px}.auth-card>p{color:#6e776f}label{display:block;font-size:13px;font-weight:800;margin:16px 0 8px}input,select,textarea{width:100%;margin-top:7px;padding:13px 14px;border:1px solid #d9e0da;border-radius:11px;background:#fff;outline:none}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:#698471;box-shadow:0 0 0 3px rgba(105,132,113,.1)}input[type=color]{padding:4px;height:50px}.check-label{display:flex!important;align-items:center;gap:10px;margin-top:35px}.check-label input{width:auto;margin:0}.alert{padding:12px 14px;border-radius:10px;background:#fff0f0;color:#9b2f2f;margin:15px 0}.success{padding:12px 14px;border-radius:10px;background:#eaf7ee;color:#28613c;margin:15px 0}.center{text-align:center}.muted{color:#7a847d}.dashboard{max-width:1360px;margin:0 auto;padding:44px 24px 80px}.dashboard.narrow{max-width:820px}.dash-title{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:30px}.dash-title p{color:#707a72}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}.stats-six{grid-template-columns:repeat(3,1fr)}.stat{background:#fff;border:1px solid #e0e6e1;border-radius:18px;padding:24px}.stat span{color:#69736b}.stat strong{display:block;font-size:42px;margin-top:10px}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.empty{text-align:center;padding:50px 20px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;margin-top:16px}th,td{padding:15px 12px;border-top:1px solid #edf0ed;text-align:left;vertical-align:middle}.status{display:inline-flex;padding:5px 9px;border-radius:999px;background:#edf4ef;font-size:12px;font-weight:800}.status-opened,.status-yes{background:#e8f6ec;color:#28613c}.status-unopened{background:#f2f3f2;color:#677169}.status-no{background:#fff0f0;color:#a23d3d}.status-maybe{background:#fff6dd;color:#8a6818}.actions-cell{display:flex;gap:14px;white-space:nowrap}.table-sub{display:block;margin-top:5px;color:#89918b;font-size:11px}.action-buttons{display:flex;gap:9px;flex-wrap:wrap}.mini-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid #dce4dd;background:#fff;padding:7px 10px;border-radius:9px;font-size:12px;font-weight:800;cursor:pointer}.mini-btn.danger{color:#9c3434;border-color:#eed3d3}.wa-btn{background:#eaf7ee;border-color:#cfe8d7;color:#28613c}.slug-row{display:flex;align-items:center;border:1px solid #d9e0da;border-radius:11px;margin-top:7px;overflow:hidden}.slug-row span{padding:0 12px;color:#7a847d;background:#f6f8f6;white-space:nowrap}.slug-row input{margin:0;border:0;border-radius:0}.slug-row input:focus{box-shadow:none}.filter-pills{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}.filter-pills a{padding:9px 14px;border:1px solid #dde4de;background:#fff;border-radius:999px;font-weight:700;font-size:13px}.filter-pills a.active{background:#172f24;color:#fff}.theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.theme-card{background:#fff;border:1px solid #e0e6e1;border-radius:22px;padding:16px}.theme-preview{height:340px;border-radius:17px;padding:28px;display:flex;flex-direction:column;justify-content:center;text-align:center}.theme-preview span,.theme-preview small{font-size:12px;letter-spacing:1px;text-transform:uppercase}.theme-preview strong{font-family:Georgia,serif;font-size:34px;margin:16px 0}.theme-minimal{background:linear-gradient(180deg,#edf4ed,#d9e7dd)}.theme-gold{background:linear-gradient(160deg,#fffaf0,#e8d7ac)}.theme-emerald{background:linear-gradient(160deg,#0c3d32,#17594a);color:#fff}.theme-rose{background:linear-gradient(160deg,#fff5f6,#efd7dc)}.theme-classic{background:linear-gradient(160deg,#efe7da,#d8c3a4)}.theme-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 3px 0}.theme-meta h3{margin:5px 0}.theme-meta small{color:#788279}.price{font-size:13px;font-weight:900;background:#eef3ef;padding:7px 10px;border-radius:999px;white-space:nowrap}.editor-layout{max-width:1450px;margin:0 auto;padding:34px 24px 70px;display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:32px}.editor-head{margin-bottom:12px}.editor-panel{padding:30px;margin-bottom:18px}.form-section{padding-bottom:4px}.form-section h2{margin:0 0 10px;font-size:21px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.full-field{grid-column:1/-1}.editor-actions{display:flex;gap:10px;flex-wrap:wrap}.editor-preview-sticky{position:sticky;top:105px}.preview-phone{margin-top:12px;background:#131713;border-radius:34px;padding:10px;box-shadow:0 25px 70px rgba(0,0,0,.15)}.preview-phone iframe{width:100%;height:720px;border:0;border-radius:25px;background:#fff}.two-col{display:grid;grid-template-columns:380px 1fr;gap:22px}.guest-layout{grid-template-columns:360px minmax(0,1fr)}.guest-table{min-width:900px}.cover-admin-preview{display:block;width:100%;max-height:320px;object-fit:cover;border-radius:18px;margin:12px 0}.admin-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:15px 0}.admin-gallery-item{border:1px solid #e2e7e3;border-radius:14px;padding:7px}.admin-gallery-item img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px}.admin-gallery-item form{margin-top:6px}.gift-admin-list{display:grid;gap:9px;margin:12px 0}.gift-admin-item{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid #e2e7e3;border-radius:12px;padding:12px}.gift-admin-item small{display:block;color:#7a847d;margin-top:4px}.publish-panel{display:flex;justify-content:space-between;align-items:center;gap:20px}@media(max-width:1050px){.editor-layout{grid-template-columns:1fr}.editor-preview-sticky{position:static}.preview-phone{max-width:430px;margin-left:auto;margin-right:auto}.two-col,.guest-layout{grid-template-columns:1fr}.stats-six{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.hero{grid-template-columns:1fr;text-align:center}.hero p{margin-left:auto;margin-right:auto}.actions{justify-content:center}.grid,.steps,.theme-grid{grid-template-columns:1fr 1fr}.hero h1{letter-spacing:-2.5px}.stats,.stats-six{grid-template-columns:1fr}.dash-title{align-items:flex-start;flex-direction:column}.admin-gallery{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.nav nav>a:not(.btn){display:none}.hero{padding:50px 20px}.grid,.steps,.theme-grid{grid-template-columns:1fr}.section{padding:60px 20px}.phone-card{transform:scale(.9)}.form-grid{grid-template-columns:1fr}.full-field{grid-column:auto}.editor-layout{padding:24px 14px}.preview-phone iframe{height:650px}.admin-gallery{grid-template-columns:repeat(2,1fr)}.publish-panel{align-items:flex-start;flex-direction:column}}


.section-sort-list{display:grid;gap:10px;margin:16px 0 20px}
.section-sort-item{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:center;border:1px solid #dfe5df;background:#fbfcfb;border-radius:13px;padding:13px 14px;cursor:grab}
.section-sort-item.dragging{opacity:.45;border-style:dashed}
.drag-handle{font-size:20px;color:#758078;text-align:center;user-select:none}
.section-toggle{display:flex!important;align-items:center;gap:7px;margin:0!important;font-size:12px!important}
.section-toggle input{width:auto;margin:0}


.stats-seven{grid-template-columns:repeat(4,1fr)}
.stat-accent{background:#17382b;color:#fff}.stat-accent span{color:#cfe0d4}
.checkin-btn{background:#17382b!important;color:#fff!important;border-color:#17382b!important}
.status-checkin{background:#dff5e6;color:#1d6937}
.qr-modal{position:fixed;inset:0;z-index:100;background:rgba(12,23,16,.68);display:none;align-items:center;justify-content:center;padding:22px}
.qr-modal.show{display:flex}.qr-modal-card{width:min(420px,100%);background:#fff;border-radius:26px;padding:30px;text-align:center;position:relative;box-shadow:0 30px 90px rgba(0,0,0,.25)}
.qr-close{position:absolute;right:14px;top:10px;border:0;background:transparent;font-size:30px;cursor:pointer}
.qr-image{width:260px;max-width:100%;display:block;margin:18px auto;border-radius:10px}
.qr-code-label{font-family:ui-monospace,monospace;font-size:13px;background:#f2f5f2;border-radius:10px;padding:10px;margin-bottom:10px}
.qr-help{color:#68736c;font-size:13px;line-height:1.6}
.checkin-live-badge{background:#17382b;color:#fff;border-radius:999px;padding:12px 18px;font-weight:900}
.checkin-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}
.checkin-summary>div{background:#fff;border:1px solid #e0e6e1;border-radius:17px;padding:19px}
.checkin-summary span{display:block;color:#69736b;font-size:13px}.checkin-summary strong{display:block;font-size:31px;margin-top:5px}
.checkin-grid{display:grid;grid-template-columns:420px minmax(0,1fr);gap:22px}
.scanner-box{height:420px;border-radius:22px;background:#101713;position:relative;overflow:hidden;margin:16px 0}
.scanner-box video{width:100%;height:100%;object-fit:cover}
.scanner-frame{position:absolute;left:50%;top:50%;width:230px;height:230px;transform:translate(-50%,-50%);border:3px solid rgba(255,255,255,.92);border-radius:24px;box-shadow:0 0 0 999px rgba(0,0,0,.28)}
.scanner-frame:before,.scanner-frame:after{content:"";position:absolute;width:55px;height:55px;border-color:#74e7a1}
.scanner-frame:before{left:-4px;top:-4px;border-left:5px solid #74e7a1;border-top:5px solid #74e7a1;border-radius:16px 0 0 0}
.scanner-frame:after{right:-4px;bottom:-4px;border-right:5px solid #74e7a1;border-bottom:5px solid #74e7a1;border-radius:0 0 16px 0}
.scanner-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;color:#fff;text-align:center;z-index:2}.scanner-placeholder span{color:#b9c5bd;font-size:13px}
.scanner-actions{display:flex;gap:9px;flex-wrap:wrap}.scan-message{padding:12px 14px;border-radius:12px;margin:14px 0;font-weight:700}.scan-message.neutral{background:#edf2ee;color:#4e5c53}.scan-message.success{background:#e3f6e9;color:#22663a}.scan-message.warning{background:#fff5d8;color:#805f0e}.scan-message.error{background:#fff0f0;color:#9b2f2f}
.manual-code{border-top:1px solid #e7ece8;padding-top:12px;margin-top:16px}.guest-search{max-width:280px;margin:0}.checkin-table{min-width:760px}
@media print{
    body>*:not(.qr-modal){display:none!important}
    .qr-modal{display:flex!important;position:static;background:#fff}
    .qr-modal-card{box-shadow:none;border:0}
    .qr-close,.qr-modal .btn{display:none!important}
}
@media(max-width:1150px){.checkin-grid{grid-template-columns:1fr}.scanner-panel{max-width:650px}.stats-seven{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.checkin-summary{grid-template-columns:repeat(2,1fr)}.stats-seven{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.checkin-summary,.stats-seven{grid-template-columns:1fr}.scanner-box{height:360px}.guest-search{max-width:none;width:100%}.panel-head{align-items:flex-start;flex-direction:column}}


.setup-admin-box{display:flex;flex-direction:column;gap:4px;background:#f4f7f4;border:1px solid #dfe6e0;border-radius:14px;padding:16px;margin:18px 0}
.setup-admin-box span{color:#718078;font-size:13px}
.admin-bg{background:#f3f5f3;min-height:100vh}
.admin-shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}
.admin-sidebar{position:sticky;top:0;height:100vh;background:#13291f;color:#fff;padding:26px 18px;display:flex;flex-direction:column}
.admin-logo{font-size:24px;font-weight:900;letter-spacing:-1px;padding:4px 9px 28px}
.admin-logo span{display:block;font-size:10px;letter-spacing:1.8px;text-transform:uppercase;color:#a8c0b1;margin-top:3px}
.admin-sidebar nav{display:grid;gap:6px}
.admin-sidebar nav a{padding:12px 13px;border-radius:11px;color:#cbd8d0;font-weight:700}
.admin-sidebar nav a:hover,.admin-sidebar nav a.active{background:#274838;color:#fff}
.admin-sidebar-bottom{margin-top:auto;display:grid;gap:8px;padding:15px 9px;border-top:1px solid rgba(255,255,255,.12)}
.admin-sidebar-bottom a{color:#cbd8d0;font-size:13px}
.admin-main{padding:34px;min-width:0}
.admin-topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}
.admin-topbar h1{font-size:38px;letter-spacing:-1.6px;margin:5px 0}
.admin-user{background:#fff;border:1px solid #dfe5df;border-radius:999px;padding:10px 15px;font-weight:800}
.admin-stat-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;margin-bottom:22px}
.admin-stat{background:#fff;border:1px solid #e0e6e1;border-radius:18px;padding:21px}
.admin-stat span{display:block;color:#6a766e;font-size:13px}.admin-stat strong{display:block;font-size:32px;margin:8px 0}.admin-stat small{color:#89938c}
.admin-stat-dark{background:#17382b;color:#fff}.admin-stat-dark span,.admin-stat-dark small{color:#c8d8ce}
.admin-two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.admin-form-list{grid-template-columns:360px minmax(0,1fr);align-items:start}
.admin-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.admin-plan-card{height:max-content}
.admin-search{width:310px;margin:0}
.admin-filter{display:flex;gap:8px;align-items:center}.admin-filter select{width:auto;margin:0}
.admin-wide-table{min-width:800px}
@media(max-width:1180px){.admin-stat-grid{grid-template-columns:repeat(3,1fr)}.admin-plan-grid{grid-template-columns:1fr 1fr}.admin-form-list{grid-template-columns:1fr}}
@media(max-width:900px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{position:static;height:auto}.admin-sidebar nav{grid-template-columns:repeat(3,1fr)}.admin-sidebar-bottom{display:none}.admin-main{padding:22px}.admin-two-col{grid-template-columns:1fr}.admin-stat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.admin-sidebar nav{grid-template-columns:1fr 1fr}.admin-stat-grid,.admin-plan-grid{grid-template-columns:1fr}.admin-topbar{align-items:flex-start;flex-direction:column}.admin-search{width:100%}.admin-filter{width:100%;flex-wrap:wrap}.admin-filter input{width:100%}}


.plan-badge{display:inline-flex;margin-top:8px;padding:7px 11px;border-radius:999px;background:#e8f1ea;color:#28573a;font-size:12px;font-weight:800}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.pricing-card{position:relative;background:#fff;border:1px solid #dfe5df;border-radius:24px;padding:28px;box-shadow:0 14px 48px rgba(30,46,35,.05)}
.pricing-card.featured{border:2px solid #2f6d46;transform:translateY(-5px)}
.pricing-badge{position:absolute;top:16px;right:16px;background:#17382b;color:#fff;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:900}
.pricing-card h2{font-size:27px;margin:5px 0}.pricing-price{font-size:38px;font-weight:900;letter-spacing:-1.5px;margin:18px 0 3px}.pricing-price small{font-size:14px;margin-right:3px}
.pricing-features{padding:0;margin:25px 0;list-style:none;display:grid;gap:11px;color:#566159}.pricing-features li{padding-bottom:10px;border-bottom:1px solid #edf0ed}
.checkout-card{padding:34px}.checkout-total{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:22px;border-bottom:1px solid #e8ece8}.checkout-total span{color:#6c766f}.checkout-total strong{font-size:34px}
.payment-instruction{padding:28px 0;text-align:center}.payment-instruction h2{font-size:27px}.bank-account{font-family:ui-monospace,monospace;font-size:31px;font-weight:900;letter-spacing:1px;padding:16px;background:#f3f6f3;border-radius:14px;margin:15px auto;max-width:420px}
.checkout-note{font-size:12px;color:#869088;text-align:center;margin:18px 0 0}.payment-status-card{text-align:center;padding:40px}.payment-status-card h2{margin:16px 0 5px}.payment-amount{font-size:35px;font-weight:900;margin:8px 0 25px}
.payment-bank-box{background:#f4f7f4;border-radius:16px;padding:20px;margin:18px auto;max-width:440px}.payment-bank-box strong{display:block;font-size:19px}.payment-bank-box div{font-family:ui-monospace,monospace;font-size:25px;font-weight:900;margin:8px 0}
.payment-status-icon{width:66px;height:66px;border-radius:50%;margin:0 auto 13px;background:#e6ece8;position:relative}.payment-status-icon:after{content:"";position:absolute;inset:18px;border-radius:50%;background:#7d8a81}.payment-status-icon.paid{background:#dff3e5}.payment-status-icon.paid:after{background:#2e7547}
.payment-status-icon.failed,.payment-status-icon.refunded{background:#fae5e5}.payment-status-icon.failed:after,.payment-status-icon.refunded:after{background:#a83c3c}
.status-pay-pending{background:#fff5dc;color:#7f6218}.status-pay-paid{background:#e3f5e8;color:#27663c}.status-pay-failed,.status-pay-refunded{background:#fde8e8;color:#9c3333}.status-pay-expired{background:#eceeed;color:#69736c}
.plan-summary{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:15px;margin-bottom:22px}.plan-summary>div{background:#fff;border:1px solid #e0e6e1;border-radius:18px;padding:22px}.plan-summary span{display:block;color:#717b74;font-size:12px}.plan-summary strong{display:block;font-size:26px;margin-top:7px}.plan-main{background:#17382b!important;color:#fff!important}.plan-main span,.plan-main small{color:#c9d9cf!important}
.theme-preview{position:relative}.theme-lock{position:absolute;top:13px;right:13px;background:rgba(20,35,26,.85);color:#fff;border-radius:999px;padding:7px 10px;font-family:Inter,system-ui,sans-serif;font-size:11px!important;font-weight:900;letter-spacing:0!important;text-transform:none!important}
.theme-locked .theme-preview{filter:saturate(.65)}.theme-locked{border-style:dashed}
@media(max-width:900px){.pricing-grid{grid-template-columns:1fr}.pricing-card.featured{transform:none}.plan-summary{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.plan-summary{grid-template-columns:1fr}.checkout-total{align-items:flex-start;flex-direction:column}.bank-account{font-size:23px}}


.quota-overview{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid #dfe6e1;border-radius:17px;padding:14px 18px;margin-bottom:18px}
.quota-overview>div{min-width:160px}.quota-overview span{display:block;color:#718078;font-size:12px}.quota-overview strong{display:block;font-size:22px;margin-top:2px}.quota-overview>a{margin-left:auto}
.quota-banner{display:grid;grid-template-columns:180px minmax(180px,1fr) auto;gap:16px;align-items:center;background:#fff;border:1px solid #dfe6e1;border-radius:17px;padding:14px 18px;margin-bottom:18px}
.quota-banner span{display:block;color:#718078;font-size:12px}.quota-banner strong{font-size:20px}
.quota-progress{height:10px;background:#e8eee9;border-radius:999px;overflow:hidden}.quota-progress>span{display:block;height:100%;background:#2d6a45;border-radius:999px}
.quota-progress.large{height:14px;margin:15px 0}
.quota-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px}
.quota-card{height:100%}.quota-unlimited{font-size:28px;font-weight:900;padding:20px 0;color:#2d6a45}
@media(max-width:800px){.quota-overview{align-items:flex-start;flex-direction:column}.quota-overview>a{margin-left:0}.quota-banner{grid-template-columns:1fr}.quota-grid{grid-template-columns:1fr}}


.dash-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.is-standalone body{overscroll-behavior-y:none}
.is-standalone .nav{padding-top:max(0px,env(safe-area-inset-top))}
.mobile-app-bar{display:none}
@media(max-width:700px){
    .dash-actions{width:100%}
    .dash-actions .btn{flex:1;text-align:center}
    .is-standalone .dashboard{padding-bottom:calc(28px + env(safe-area-inset-bottom))}
}


/* =========================================================
   InviteKu V13 — Professional UI Refresh
   Visual-only layer. Business logic remains unchanged.
   ========================================================= */

:root{
  --ik-ink:#13231c;
  --ik-muted:#6f7d75;
  --ik-green:#15392b;
  --ik-green-2:#235c43;
  --ik-green-soft:#e9f1ec;
  --ik-cream:#f8f6f0;
  --ik-bg:#f3f5f2;
  --ik-card:#ffffff;
  --ik-line:#e5ebe6;
  --ik-gold:#b9945d;
  --ik-danger:#a43b3b;
  --ik-shadow:0 18px 55px rgba(20,45,32,.08);
  --ik-shadow-lg:0 30px 90px rgba(20,45,32,.14);
  --ik-radius:24px;
  --ik-radius-sm:14px;
}

html{background:var(--ik-bg)}
body{
  color:var(--ik-ink);
  background:var(--ik-bg);
  font-family:"Segoe UI Variable","SF Pro Display","Segoe UI",Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;
  letter-spacing:-.01em;
}
::selection{background:#cfe4d7;color:#10281d}
a{transition:color .18s ease,opacity .18s ease,transform .18s ease}
button,input,select,textarea{font-family:inherit}
button:disabled,.btn:disabled{opacity:.48;cursor:not-allowed}

/* Navigation */
.nav{
  height:82px;
  padding:0 clamp(22px,5vw,76px);
  border-bottom:1px solid rgba(25,57,43,.08);
  background:rgba(251,252,250,.88);
  box-shadow:0 6px 30px rgba(24,44,34,.035);
  backdrop-filter:blur(22px) saturate(1.2);
}
.brand{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--ik-green);
  font-size:26px;
  font-weight:900;
  letter-spacing:-1.4px;
}
.brand::before{
  content:"";
  width:11px;height:11px;border-radius:4px;
  background:linear-gradient(145deg,var(--ik-green-2),var(--ik-gold));
  box-shadow:0 0 0 5px rgba(35,92,67,.08);
}
.nav nav{gap:10px}
.nav nav>a,.nav nav>span{
  padding:9px 11px;
  border-radius:10px;
  font-size:14px;
  color:#536159;
}
.nav nav>a:hover{background:#eef3ef;color:var(--ik-green)}
.nav nav>.btn{color:white;padding:11px 16px}

/* Buttons */
.btn{
  min-height:44px;
  border-radius:13px;
  padding:11px 17px;
  background:linear-gradient(180deg,#1c4635,#143629);
  color:#fff;
  font-weight:750;
  letter-spacing:-.01em;
  box-shadow:0 8px 20px rgba(21,57,43,.15);
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(21,57,43,.22)}
.btn.ghost{
  background:#fff;
  color:var(--ik-green);
  border:1px solid #dce6df;
  box-shadow:none;
}
.btn.ghost:hover{background:#f5f8f6;border-color:#cbd9cf}
.btn.publish{background:linear-gradient(180deg,#2e7450,#215e41)}
.btn.big{min-height:50px;padding:13px 21px;border-radius:15px}
.mini-btn{
  min-height:34px;
  border-radius:10px;
  border-color:#dfe7e1;
  color:#44554b;
  background:#fff;
  box-shadow:0 2px 8px rgba(21,45,32,.025);
}
.mini-btn:hover{border-color:#bfcfc4;background:#f6f9f7;color:var(--ik-green);transform:translateY(-1px)}
.checkin-btn{background:var(--ik-green)!important;color:#fff!important;border-color:var(--ik-green)!important}

/* Landing */
body:not(.dash-bg):not(.auth-bg):not(.admin-bg){background:#fff}
.hero{
  position:relative;
  min-height:720px;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr);
  gap:74px;
  padding:88px clamp(28px,7vw,110px) 96px;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 22%,rgba(44,105,75,.10),transparent 34%),
    radial-gradient(circle at 83% 28%,rgba(185,148,93,.16),transparent 30%),
    linear-gradient(180deg,#fbfcfa 0%,#f6f8f5 100%);
}
.hero::after{
  content:"";
  position:absolute;
  width:360px;height:360px;border-radius:50%;
  right:-100px;bottom:-180px;
  border:1px solid rgba(21,57,43,.08);
  box-shadow:0 0 0 60px rgba(21,57,43,.025),0 0 0 120px rgba(21,57,43,.018);
}
.hero>div:first-child{position:relative;z-index:2}
.badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid #dce7df;
  background:rgba(255,255,255,.72);
  color:#3a6a50;
  box-shadow:0 6px 18px rgba(21,57,43,.04);
}
.badge::before{content:"✦";color:var(--ik-gold);font-size:10px}
.hero h1{
  max-width:850px;
  margin:25px 0 24px;
  color:#10261c;
  font-size:clamp(48px,5.6vw,82px);
  line-height:.97;
  letter-spacing:-4.8px;
  font-weight:850;
}
.hero p{
  max-width:700px;
  color:#647269;
  font-size:18px;
  line-height:1.75;
}
.actions{margin-top:34px;gap:12px}
.phone-card{position:relative;z-index:2}
.phone-card::before{
  content:"";
  position:absolute;inset:10% -5% 3% 18%;
  border-radius:80px;
  background:linear-gradient(160deg,rgba(25,73,51,.12),rgba(185,148,93,.12));
  filter:blur(2px);
  transform:rotate(-5deg);
}
.mock-invite{
  position:relative;
  width:350px;
  min-height:570px;
  border:8px solid rgba(255,255,255,.95);
  border-radius:46px;
  overflow:hidden;
  color:#173326;
  background:
    linear-gradient(rgba(243,237,222,.55),rgba(233,241,235,.82)),
    radial-gradient(circle at top left,#f3dfbc,#dcebdc 48%,#b4cdbc);
  box-shadow:0 35px 90px rgba(18,44,31,.20),0 0 0 1px rgba(21,57,43,.05);
}
.mock-invite::before{
  content:"";
  position:absolute;inset:24px;
  border:1px solid rgba(21,57,43,.16);
  border-radius:30px;
  pointer-events:none;
}
.mock-invite small{letter-spacing:2px;text-transform:uppercase;color:#6f7b73}
.mock-invite h2{
  font-family:Georgia,"Times New Roman",serif;
  font-size:48px;
  line-height:1.02;
  letter-spacing:-2px;
}
.mock-invite p{font-size:15px;color:#5d6c63}
.mock-invite button{
  margin-top:12px;
  background:#17392c;
  color:#fff;
  font-weight:700;
  box-shadow:0 10px 25px rgba(21,57,43,.18);
}
.section{padding:105px clamp(28px,7vw,110px)}
.section.soft{
  background:
    linear-gradient(180deg,#f7f8f6,#f1f4f1);
  border-top:1px solid #edf1ed;
  border-bottom:1px solid #edf1ed;
}
.section-head{max-width:1200px;margin:0 auto}
.section h2,.dash-title h1{
  color:#14271e;
  font-weight:800;
  letter-spacing:-2px;
}
.grid{gap:24px}
.card{
  padding:15px;
  border:1px solid #e4eae5;
  border-radius:24px;
  box-shadow:0 10px 35px rgba(22,45,33,.04);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.card:hover{transform:translateY(-4px);box-shadow:var(--ik-shadow);border-color:#d5e0d8}
.theme-thumb{
  position:relative;
  height:215px;
  overflow:hidden;
  background:
    linear-gradient(145deg,rgba(255,255,255,.35),transparent),
    radial-gradient(circle at 30% 25%,#e8d8b9,transparent 30%),
    linear-gradient(140deg,#dce9df,#b9cdbf);
}
.theme-thumb::after{
  content:"The Invitation";
  position:absolute;left:20px;bottom:20px;
  color:#244637;
  font-family:Georgia,serif;
  font-size:24px;
}
.card h3{margin:17px 5px 6px}
.card p{margin:0 5px 8px}
.steps{gap:20px}
.steps>div{
  position:relative;
  padding:27px;
  border-radius:22px;
  border:1px solid #e4eae5;
  box-shadow:0 10px 30px rgba(22,45,33,.035);
}
.steps b{
  width:38px;height:38px;
  color:#28573c;
  background:#e7f0e9;
  border-radius:12px;
}
footer{background:#132d22;color:#aebdb4;border:0;padding:44px}

/* Authentication */
.auth-bg{
  position:relative;
  background:
    radial-gradient(circle at 10% 20%,rgba(35,92,67,.10),transparent 30%),
    radial-gradient(circle at 90% 75%,rgba(185,148,93,.13),transparent 28%),
    #f4f6f3;
}
.auth-bg::before{
  content:"";
  position:fixed;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(21,57,43,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(21,57,43,.025) 1px,transparent 1px);
  background-size:42px 42px;
}
.auth-shell{position:relative;max-width:510px;padding:60px 22px}
.auth-shell>.brand{justify-content:center;margin-bottom:28px}
.auth-card{
  border-radius:28px;
  padding:34px;
  border:1px solid rgba(215,225,218,.9);
  box-shadow:0 28px 80px rgba(22,45,33,.10);
}
.auth-card h1{font-size:32px;letter-spacing:-1.3px}
.auth-card>p{line-height:1.65}

/* Forms */
label{
  margin:18px 0 8px;
  color:#34453b;
  font-size:12px;
  letter-spacing:.01em;
}
input,select,textarea{
  min-height:48px;
  padding:13px 14px;
  border:1px solid #dbe4dd;
  border-radius:13px;
  background:#fbfcfb;
  color:#1d2c24;
  transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
input::placeholder,textarea::placeholder{color:#98a39c}
input:focus,select:focus,textarea:focus{
  background:#fff;
  border-color:#7ea18c;
  box-shadow:0 0 0 4px rgba(53,105,77,.09);
}
.slug-row{
  border-radius:13px;
  border-color:#dbe4dd;
  background:#fbfcfb;
}
.slug-row span{background:#f0f4f1;color:#728078}

/* App background */
.dash-bg{
  background:
    radial-gradient(circle at 100% 0%,rgba(35,92,67,.06),transparent 26%),
    linear-gradient(180deg,#f5f7f4 0%,#f1f4f1 100%);
}
.dashboard{max-width:1440px;padding:48px clamp(20px,3vw,42px) 90px}
.dashboard.narrow{max-width:900px}
.dash-title{
  position:relative;
  margin-bottom:28px;
  padding:30px 32px;
  border:1px solid rgba(220,229,222,.9);
  border-radius:28px;
  background:
    radial-gradient(circle at 88% 20%,rgba(185,148,93,.11),transparent 30%),
    linear-gradient(135deg,rgba(255,255,255,.94),rgba(248,250,248,.92));
  box-shadow:0 16px 48px rgba(23,52,37,.055);
  overflow:hidden;
}
.dash-title::after{
  content:"";
  position:absolute;width:190px;height:190px;border-radius:50%;
  right:-80px;bottom:-110px;border:1px solid rgba(21,57,43,.07);
  box-shadow:0 0 0 38px rgba(21,57,43,.025),0 0 0 76px rgba(21,57,43,.015);
}
.dash-title>div,.dash-title>.btn,.dash-title>.dash-actions{position:relative;z-index:2}
.dash-title h1{font-size:clamp(34px,3.6vw,50px);margin:5px 0 9px;letter-spacing:-2.4px}
.dash-title p{margin:0;color:#6d7a72;line-height:1.6}
.eyebrow{
  color:#56816a;
  letter-spacing:1.8px;
  font-size:11px;
}
.plan-badge{
  margin-top:13px;
  padding:8px 12px;
  background:#eaf2ed;
  border:1px solid #d8e6dc;
  color:#286043;
}
.quota-overview{
  border-radius:20px;
  padding:17px 20px;
  border-color:#e0e8e2;
  box-shadow:0 8px 30px rgba(22,45,33,.035);
}
.quota-overview>div{
  min-width:180px;
  padding-right:20px;
  border-right:1px solid #e7ece8;
}
.quota-overview>div:nth-child(2){border-right:0}
.quota-overview strong{font-size:24px;letter-spacing:-1px}

/* Dashboard stats */
.stats{gap:14px}
.stats-seven{
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
}
.stat{
  min-height:128px;
  position:relative;
  overflow:hidden;
  border:1px solid #e2e9e3;
  border-radius:21px;
  padding:21px 22px;
  box-shadow:0 10px 32px rgba(22,45,33,.035);
  transition:transform .18s ease,box-shadow .18s ease;
}
.stat:hover{transform:translateY(-2px);box-shadow:0 16px 42px rgba(22,45,33,.07)}
.stat span{font-size:12px;color:#758179}
.stat strong{font-size:38px;letter-spacing:-2px;margin-top:12px}
.stats-seven .stat:nth-child(1){
  grid-column:span 2;
  background:
    radial-gradient(circle at 90% 20%,rgba(185,148,93,.14),transparent 28%),
    linear-gradient(135deg,#fff,#f8faf8);
}
.stats-seven .stat:nth-child(7){
  background:linear-gradient(145deg,#17392c,#24583f);
  border-color:#17392c;
}
.stats-seven .stat:nth-child(7)::after{
  content:"✓";position:absolute;right:18px;top:14px;
  width:34px;height:34px;border-radius:12px;
  display:grid;place-items:center;
  background:rgba(255,255,255,.10);
  color:#dfece3;
}
.stat-accent span{color:#bfd2c5!important}
.stat-accent strong{color:#fff}

/* Panels */
.panel,.auth-card{
  background:rgba(255,255,255,.96);
}
.panel{
  border:1px solid #e1e8e3;
  border-radius:25px;
  padding:28px;
  box-shadow:0 14px 44px rgba(22,45,33,.045);
}
.panel + .panel{margin-top:18px}
.panel-head{min-height:44px}
.panel-head h2,.panel>h2{
  color:#172a20;
  font-size:23px;
  letter-spacing:-.8px;
}
.panel-head>a{color:#3c7455;font-weight:700;font-size:13px}
.empty{
  margin-top:16px;
  padding:62px 24px;
  border:1px dashed #d9e2dc;
  border-radius:18px;
  background:#fafbfa;
}
.empty h3{font-size:21px}

/* Tables */
.table-wrap{
  margin-top:14px;
  border:1px solid #e5ebe6;
  border-radius:17px;
  overflow:auto;
  background:#fff;
}
table{margin-top:0}
th{
  padding:13px 15px;
  border-top:0;
  border-bottom:1px solid #e6ece7;
  background:#f7f9f7;
  color:#78847c;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.07em;
  font-weight:800;
}
td{
  padding:16px 15px;
  border-top:1px solid #edf1ee;
  color:#34453b;
}
tbody tr{transition:background .15s ease}
tbody tr:hover{background:#fafcfb}
td:first-child strong,td:first-child>a>strong{color:#1b3024}
.table-sub{color:#8d9891}
.status{
  min-height:27px;
  align-items:center;
  padding:5px 9px;
  border:1px solid transparent;
  font-weight:750;
}
.status-opened,.status-yes,.status-checkin{border-color:#d2e8d9}
.status-unopened{border-color:#e3e7e4}
.status-no{border-color:#f2dada}
.status-maybe{border-color:#f3e5b8}

/* Theme Store */
.filter-pills{
  gap:8px;
  padding:7px;
  display:inline-flex;
  max-width:100%;
  border:1px solid #e0e8e2;
  border-radius:16px;
  background:rgba(255,255,255,.78);
  box-shadow:0 8px 25px rgba(22,45,33,.035);
}
.filter-pills a{
  border:0;
  border-radius:11px;
  padding:9px 14px;
  background:transparent;
  color:#647168;
}
.filter-pills a.active{
  background:#183a2d;
  color:#fff;
  box-shadow:0 7px 18px rgba(21,57,43,.16);
}
.theme-grid{gap:24px}
.theme-card{
  position:relative;
  overflow:hidden;
  padding:13px;
  border-radius:25px;
  border-color:#e1e8e3;
  box-shadow:0 12px 38px rgba(22,45,33,.045);
  transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;
}
.theme-card:hover{transform:translateY(-5px);box-shadow:0 24px 60px rgba(22,45,33,.11);border-color:#cedbd2}
.theme-preview{
  height:365px;
  border-radius:19px;
  overflow:hidden;
  position:relative;
}
.theme-preview::after{
  content:"";
  position:absolute;inset:14px;
  border:1px solid rgba(255,255,255,.46);
  border-radius:14px;
  pointer-events:none;
}
.theme-preview strong{font-size:37px;letter-spacing:-1.4px}
.theme-minimal{background:linear-gradient(145deg,#f2f5ef,#d5e4d8)}
.theme-gold{background:radial-gradient(circle at top left,#fff8e6,transparent 40%),linear-gradient(155deg,#f6e7c8,#cdb07c)}
.theme-emerald{background:radial-gradient(circle at 30% 20%,#2b7158,transparent 35%),linear-gradient(155deg,#153f32,#0d2f26)}
.theme-rose{background:radial-gradient(circle at top left,#fff,transparent 34%),linear-gradient(155deg,#f5e4e6,#dfc2c9)}
.theme-classic{background:radial-gradient(circle at 20% 15%,#fff4df,transparent 34%),linear-gradient(155deg,#e8d9c4,#bda280)}
.theme-meta{padding:15px 5px 8px}
.theme-meta h3{font-size:19px}
.price{background:#eef3ef;color:#315d45}

/* Create / editor */
.editor-layout{gap:24px;padding-top:30px}
.editor-panel{
  border-radius:24px;
  border-color:#e1e8e3;
  padding:30px;
}
.editor-panel+.editor-panel{margin-top:18px}
.editor-head h1{letter-spacing:-1.5px}
.editor-preview-sticky{top:102px}
.preview-phone{
  border-radius:38px;
  padding:9px;
  background:linear-gradient(145deg,#17231d,#0d1511);
  box-shadow:0 28px 80px rgba(10,28,18,.20);
}
.preview-phone iframe{border-radius:29px}
.form-section h2{
  padding-bottom:11px;
  border-bottom:1px solid #edf1ee;
}
.section-sort-item{
  border-radius:14px;
  background:#fafcfb;
}
.section-sort-item:hover{border-color:#c8d8ce;background:#f5f9f6}
.cover-admin-preview{box-shadow:0 10px 30px rgba(22,45,33,.08)}
.admin-gallery-item{border-radius:15px;background:#fafbfa}

/* Guest manager */
.guest-layout{gap:20px}
.guest-layout>.panel:first-child{
  position:sticky;
  top:102px;
  align-self:start;
}
.quota-banner{
  border-radius:20px;
  box-shadow:0 9px 30px rgba(22,45,33,.035);
}
.quota-progress{background:#e8eee9}
.quota-progress>span{background:linear-gradient(90deg,#285f43,#6d9a7e)}

/* QR modal */
.qr-modal{backdrop-filter:blur(8px)}
.qr-modal-card{
  border:1px solid rgba(255,255,255,.4);
  border-radius:28px;
  box-shadow:0 35px 100px rgba(0,0,0,.30);
}

/* Pricing */
.pricing-grid{gap:22px}
.pricing-card{
  border-radius:27px;
  padding:30px;
  border-color:#dfe7e1;
  box-shadow:0 16px 50px rgba(22,45,33,.055);
}
.pricing-card.featured{
  border:2px solid #376e50;
  box-shadow:0 24px 70px rgba(28,81,55,.15);
}
.pricing-price{font-size:42px}
.pricing-features li{line-height:1.5}

/* Plan & payment */
.plan-summary>div,.quota-card{
  border-radius:22px;
  box-shadow:0 10px 32px rgba(22,45,33,.035);
}
.plan-main{
  background:
    radial-gradient(circle at 95% 15%,rgba(185,148,93,.30),transparent 30%),
    linear-gradient(145deg,#17392c,#235a41)!important;
}
.checkout-card,.payment-status-card{border-radius:28px}
.bank-account{
  border:1px solid #e3e9e5;
  background:#f7f9f7;
}

/* Alert states */
.alert,.success{
  border-radius:13px;
  padding:13px 15px;
  font-size:13px;
}
.alert{border:1px solid #efd4d4;background:#fff6f6}
.success{border:1px solid #cfe6d6;background:#f0faf3}

/* Scrollbars */
*{scrollbar-width:thin;scrollbar-color:#c5d2c9 transparent}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:#c6d2ca;border:3px solid transparent;background-clip:padding-box;border-radius:999px}
::-webkit-scrollbar-track{background:transparent}

/* Responsive */
@media(max-width:1150px){
  .stats-seven{grid-template-columns:repeat(3,minmax(0,1fr))}
  .stats-seven .stat:nth-child(1){grid-column:span 1}
}
@media(max-width:900px){
  .nav{height:72px;padding:0 20px}
  .nav nav{gap:4px}
  .hero{padding:60px 24px 76px;gap:44px}
  .hero h1{letter-spacing:-3px}
  .dashboard{padding:28px 18px 70px}
  .dash-title{padding:25px}
  .stats-seven{grid-template-columns:1fr 1fr}
  .quota-overview>div{border-right:0;padding-right:0}
  .guest-layout>.panel:first-child{position:static}
}
@media(max-width:620px){
  .brand{font-size:23px}
  .nav nav>span{display:none}
  .nav nav>a:not(.btn){display:none}
  .hero{text-align:left}
  .hero h1{font-size:48px;line-height:1.01;letter-spacing:-2.7px}
  .hero p{font-size:16px}
  .actions{justify-content:flex-start;flex-direction:column}
  .actions .btn{width:100%}
  .phone-card{transform:none}
  .mock-invite{width:min(100%,340px)}
  .section{padding:72px 20px}
  .section h2,.dash-title h1{font-size:33px}
  .dash-title{border-radius:22px}
  .stats-seven{grid-template-columns:1fr}
  .stat{min-height:112px}
  .quota-overview{gap:12px}
  .quota-overview>div{min-width:auto;width:100%}
  .panel{padding:20px;border-radius:20px}
  .filter-pills{display:flex}
  .theme-preview{height:330px}
  .auth-card{padding:26px 21px}
}


/* ===============================================================
   InviteKu V14 — Elegant Botanical UI
   Selected design: ivory + deep emerald + warm gold + floral luxury
   =============================================================== */
:root{
  --ik14-green:#103b2c;
  --ik14-green-2:#1f6548;
  --ik14-green-3:#2e7a57;
  --ik14-gold:#b99053;
  --ik14-gold-soft:#ead6ae;
  --ik14-ivory:#fbfaf6;
  --ik14-cream:#f6f1e7;
  --ik14-bg:#f4f6f3;
  --ik14-card:#fff;
  --ik14-line:#e7ece8;
  --ik14-text:#15271f;
  --ik14-muted:#77837b;
  --ik14-shadow:0 18px 55px rgba(25,48,37,.07);
  --ik14-shadow-lg:0 30px 90px rgba(25,48,37,.14);
  --ik14-serif:Georgia,"Times New Roman",serif;
  --ik14-sans:"Segoe UI Variable","Segoe UI",Inter,system-ui,sans-serif;
}
html,body{font-family:var(--ik14-sans);color:var(--ik14-text)}
body{background:var(--ik14-bg)}
body.ik-app{margin:0;background:var(--ik14-bg)}
a{text-decoration:none}

/* Logo */
.ik-logo{display:inline-flex;align-items:center;gap:9px;color:var(--ik14-green);min-width:0}
.ik-logo-mark{width:38px;height:44px;display:grid;place-items:center}
.ik-logo-mark svg{width:100%;height:100%;overflow:visible}
.ik-logo-mark svg>path:first-child{fill:none;stroke:var(--ik14-gold);stroke-width:2.6;stroke-linecap:round}
.ik-logo-mark svg>path:not(:first-child){fill:var(--ik14-gold)}
.ik-logo-text{display:flex;flex-direction:column;min-width:0}
.ik-logo-text strong{font-family:var(--ik14-serif);font-size:29px;line-height:1;font-weight:700;letter-spacing:-1.3px;color:var(--ik14-green)}
.ik-logo-text small{font-size:7px;letter-spacing:2.2px;color:#879087;margin-top:5px}
.ik-logo-compact .ik-logo-mark{width:31px;height:36px}
.ik-logo-compact .ik-logo-text strong{font-size:24px}

/* Public landing navigation */
.ik-public-nav{
  height:84px;display:flex;align-items:center;justify-content:space-between;
  padding:0 clamp(24px,6vw,96px);background:rgba(255,255,255,.92);
  border-bottom:1px solid #edf0ed;position:sticky;top:0;z-index:50;
  backdrop-filter:blur(18px);
}
.ik-public-links{display:flex;align-items:center;gap:28px}
.ik-public-links>a:not(.btn){font-size:13px;font-weight:650;color:#536158}
.ik-public-links>a:not(.btn):hover{color:var(--ik14-green)}
.ik-public-links .btn{border-radius:12px;padding:12px 20px}

/* Landing hero */
.ik-landing{background:#fff}
.ik-luxury-hero{
  min-height:700px;position:relative;overflow:hidden;
  display:grid;grid-template-columns:minmax(0,1.04fr) minmax(420px,.96fr);
  align-items:center;gap:50px;padding:70px clamp(28px,6vw,94px) 84px;
  background:
    radial-gradient(circle at 78% 22%,rgba(185,144,83,.12),transparent 29%),
    radial-gradient(circle at 6% 90%,rgba(30,101,72,.07),transparent 28%),
    linear-gradient(135deg,#fff 0%,#fcfbf6 52%,#f4f7f2 100%);
}
.ik-luxury-hero::before,.ik-luxury-hero::after{
  content:"";position:absolute;border:1px solid rgba(185,144,83,.16);border-radius:50%;pointer-events:none
}
.ik-luxury-hero::before{width:420px;height:420px;right:12%;top:80px}
.ik-luxury-hero::after{width:540px;height:540px;right:7%;top:20px}
.ik-hero-copy{position:relative;z-index:3;max-width:760px}
.ik-kicker{display:flex;align-items:center;gap:12px;color:#a5793f;font-size:11px;font-weight:800;letter-spacing:2.1px;text-transform:uppercase}
.ik-kicker::before{content:"";width:34px;height:1px;background:var(--ik14-gold)}
.ik-hero-copy h1{
  font-family:var(--ik14-serif);font-size:clamp(54px,5.7vw,90px);
  line-height:.96;letter-spacing:-4.2px;font-weight:700;color:#10291f;margin:22px 0 22px
}
.ik-hero-copy p{font-size:17px;line-height:1.78;color:#6f7a73;max-width:650px;margin:0}
.ik-hero-actions{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}
.ik-trust-row{display:flex;align-items:center;gap:25px;margin-top:35px;padding-top:24px;border-top:1px solid #e9ece8}
.ik-trust-item{display:flex;align-items:center;gap:9px;color:#6e7972;font-size:12px}
.ik-trust-icon{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#f3ede2;color:#aa7b3e;font-size:15px}
.ik-showcase{position:relative;z-index:3;min-height:570px}
.ik-botanical{position:absolute;inset:0;pointer-events:none}
.ik-leaf{position:absolute;width:120px;height:55px;border-radius:100% 0 100% 0;background:linear-gradient(145deg,#6f8f61,#244d38);opacity:.95}
.ik-leaf.l1{right:3%;top:12%;transform:rotate(37deg)}
.ik-leaf.l2{left:2%;bottom:11%;transform:rotate(-28deg) scale(.8)}
.ik-leaf.l3{right:2%;bottom:5%;transform:rotate(145deg) scale(.65)}
.ik-flower{position:absolute;width:115px;height:115px;right:18%;top:10%;filter:drop-shadow(0 14px 22px rgba(70,80,60,.1))}
.ik-flower::before,.ik-flower::after{content:"";position:absolute;inset:25%;border-radius:50%;background:#e7c897}
.ik-flower span{position:absolute;left:42px;top:0;width:32px;height:74px;border-radius:50%;background:#fffdf8;transform-origin:16px 58px}
.ik-flower span:nth-child(2){transform:rotate(60deg)}
.ik-flower span:nth-child(3){transform:rotate(120deg)}
.ik-flower span:nth-child(4){transform:rotate(180deg)}
.ik-flower span:nth-child(5){transform:rotate(240deg)}
.ik-flower span:nth-child(6){transform:rotate(300deg)}
.ik-invite-card{
  position:absolute;left:6%;top:70px;width:355px;height:465px;border-radius:8px;
  background:linear-gradient(145deg,#fbf8ef,#eee5d2);border:1px solid #dfd1b5;
  box-shadow:0 24px 65px rgba(31,55,42,.17);transform:rotate(-5deg);
  padding:60px 38px;text-align:center;overflow:hidden
}
.ik-invite-card::before{content:"";position:absolute;inset:18px;border:1px solid rgba(130,100,53,.3)}
.ik-invite-card small{font-size:9px;letter-spacing:2.5px;text-transform:uppercase;color:#7f7566}
.ik-invite-card h3{font-family:var(--ik14-serif);font-size:40px;line-height:1.05;margin:38px 0 16px;color:#20352b}
.ik-invite-card p{font-family:var(--ik14-serif);font-style:italic;color:#9d7b4e}
.ik-phone{
  position:absolute;right:3%;bottom:15px;width:245px;height:490px;background:#111813;
  border-radius:38px;padding:9px;box-shadow:0 30px 75px rgba(17,39,28,.27);transform:rotate(6deg)
}
.ik-phone-screen{
  height:100%;border-radius:30px;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:24px;text-align:center;background:linear-gradient(160deg,#ecf1e8,#cadacb);border:1px solid #ffffff55
}
.ik-phone-screen small{font-size:9px;letter-spacing:2px;color:#738076}
.ik-phone-screen h4{font-family:var(--ik14-serif);font-size:28px;line-height:1.08;margin:22px 0;color:#15372a}
.ik-phone-screen p{font-size:11px;color:#7b857d}
.ik-phone-screen .mini-cta{margin-top:20px;padding:9px 16px;border-radius:999px;background:#fff;color:#15372a;font-size:10px;font-weight:700}
.ik-landing-stats{
  display:grid;grid-template-columns:repeat(4,1fr);max-width:1160px;margin:-28px auto 0;position:relative;z-index:5;
  background:#fff;border:1px solid #ebece8;border-radius:20px;box-shadow:var(--ik14-shadow);overflow:hidden
}
.ik-landing-stats>div{padding:22px 25px;text-align:center;border-right:1px solid #eceeea}
.ik-landing-stats>div:last-child{border-right:0}
.ik-landing-stats strong{display:block;font-family:var(--ik14-serif);font-size:26px;color:#12382b}
.ik-landing-stats span{font-size:11px;color:#8b948e}
.ik-section{padding:100px clamp(24px,6vw,94px)}
.ik-section-head{max-width:760px;margin-bottom:34px}
.ik-section-head h2{font-family:var(--ik14-serif);font-size:48px;letter-spacing:-2px;line-height:1.05;margin:12px 0;color:#14352a}
.ik-section-head p{color:#7a847e;line-height:1.7}
.ik-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ik-feature-card{background:#fff;border:1px solid #e8ece8;border-radius:21px;padding:26px;box-shadow:0 12px 35px rgba(30,55,42,.04)}
.ik-feature-card span{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:#f3ecdf;color:#a7793f;margin-bottom:17px}
.ik-feature-card h3{font-family:var(--ik14-serif);font-size:24px;margin:0 0 8px;color:#17362a}
.ik-feature-card p{font-size:13px;line-height:1.65;color:#7c8780}
.ik-footer{padding:35px clamp(24px,6vw,94px);display:flex;justify-content:space-between;align-items:center;background:#113629;color:#c8d5cd}

/* App shell */
.ik-app-shell{min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr)}
.ik-sidebar{
  position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid #e6ebe7;padding:22px 16px 18px;
  display:flex;flex-direction:column;z-index:30
}
.ik-sidebar-logo{padding:4px 8px 26px}
.ik-side-nav{display:grid;gap:6px}
.ik-side-nav>a{
  min-height:46px;padding:0 13px;border-radius:11px;display:flex;align-items:center;gap:11px;
  color:#657168;font-size:13px;font-weight:650;transition:.18s ease
}
.ik-side-nav>a:hover{background:#f3f7f4;color:#16452f}
.ik-side-nav>a.active{background:linear-gradient(90deg,#184c36,#0f3c2b);color:#fff;box-shadow:0 9px 22px rgba(16,59,43,.15)}
.ik-nav-icon{width:21px;height:21px;display:grid;place-items:center;flex:0 0 auto}
.ik-nav-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ik-side-plan{margin-top:auto;margin-bottom:14px;padding:18px 15px;border-radius:16px;background:#faf8f1;border:1px solid #efe4cf;color:#59625c}
.ik-side-plan.premium{background:linear-gradient(145deg,#fbf4e6,#f2dfbd);border-color:#ead6ae}
.ik-side-plan-icon{display:block;color:#b17f3d;margin-bottom:8px}
.ik-side-plan strong{display:block;color:#3c463f;font-family:var(--ik14-serif);font-size:17px}
.ik-side-plan small{display:block;font-size:10px;line-height:1.55;margin:5px 0 10px}
.ik-side-plan a{font-size:11px;font-weight:800;color:#8d642f}
.ik-side-bottom{padding-top:12px;border-top:1px solid #edf0ed}
.ik-side-user{display:flex;align-items:center;gap:9px;padding:6px 5px 11px}
.ik-side-user>span:last-child{min-width:0}
.ik-side-user strong,.ik-side-user small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ik-side-user strong{font-size:12px;color:#2e3c34}
.ik-side-user small{font-size:9px;color:#909890;margin-top:2px}
.ik-logout{display:flex;gap:9px;align-items:center;color:#879087;font-size:11px;padding:8px 5px}
.ik-app-area{min-width:0}
.ik-topbar{
  height:76px;display:flex;align-items:center;justify-content:flex-end;padding:0 30px;background:rgba(255,255,255,.85);
  border-bottom:1px solid #e8ece8;position:sticky;top:0;z-index:20;backdrop-filter:blur(18px)
}
.ik-top-actions{display:flex;gap:10px;align-items:center}
.ik-icon-btn{width:38px;height:38px;border-radius:10px;border:1px solid #e1e7e2;background:#fff;display:grid;place-items:center;color:#5c6d63}
.ik-icon-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
.ik-user-chip{display:flex;align-items:center;gap:9px;padding:5px 9px 5px 5px;border-radius:12px;color:#334239}
.ik-user-chip:hover{background:#f5f8f5}
.ik-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#103b2c;color:#fff;font-size:11px;font-weight:800;box-shadow:0 6px 17px rgba(16,59,44,.18)}
.ik-user-chip strong,.ik-user-chip small{display:block;line-height:1.2}
.ik-user-chip strong{font-size:11px}
.ik-user-chip small{font-size:8px;color:#a17a46;margin-top:3px}
.ik-chevron{color:#879087;font-size:13px;margin-left:5px}
.ik-mobile-head{display:none}
.ik-content{padding:30px 32px 70px;max-width:1500px;margin:0 auto}
.ik-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:25px}
.ik-page-title{max-width:780px}
.ik-page-title .ik-kicker{font-size:9px}
.ik-page-title h1{font-family:var(--ik14-serif);font-size:38px;line-height:1.05;letter-spacing:-1.7px;margin:9px 0 6px;color:#17372b}
.ik-page-title p{font-size:12px;color:#849087;margin:0;line-height:1.6}
.ik-page-actions{display:flex;align-items:center;gap:8px}
.ik-btn{
  min-height:43px;border:0;border-radius:10px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:#103b2c;color:#fff;font-size:12px;font-weight:750;box-shadow:0 8px 20px rgba(16,59,44,.14)
}
.ik-btn:hover{background:#174a35;color:#fff;transform:translateY(-1px)}
.ik-btn.secondary{background:#fff;border:1px solid #dfe6e1;color:#48574e;box-shadow:none}
.ik-btn.gold{background:#b58b4e}
.ik-btn.small{min-height:35px;padding:0 11px;font-size:10px}
.ik-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}

/* Dashboard selected layout */
.ik-welcome{
  display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px
}
.ik-welcome h1{font-family:var(--ik14-serif);font-size:35px;line-height:1.05;letter-spacing:-1.5px;margin:0 0 5px;color:#14362a}
.ik-welcome p{font-size:11px;color:#7e8982;margin:0}
.ik-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}
.ik-stat-card{
  min-height:118px;background:#fff;border:1px solid #e7ece8;border-radius:14px;padding:18px 18px;position:relative;box-shadow:0 8px 28px rgba(29,52,40,.035)
}
.ik-stat-icon{width:34px;height:34px;border-radius:10px;background:#f4ecdf;color:#a77b40;display:grid;place-items:center;margin-bottom:12px}
.ik-stat-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}
.ik-stat-card strong{font-family:var(--ik14-serif);display:block;font-size:27px;line-height:1;color:#17372b}
.ik-stat-card span{display:block;color:#758179;font-size:10px;margin-top:5px}
.ik-stat-card .ik-progress{margin-top:9px}
.ik-progress{height:5px;border-radius:999px;background:#edf1ee;overflow:hidden}
.ik-progress>i{display:block;height:100%;border-radius:999px;background:#24694a}
.ik-dashboard-panel{background:#fff;border:1px solid #e7ece8;border-radius:16px;padding:20px;box-shadow:0 10px 32px rgba(29,52,40,.035)}
.ik-panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}
.ik-panel-head h2{font-family:var(--ik14-serif);font-size:20px;margin:0;color:#17362a}
.ik-panel-head>a{font-size:10px;color:#2f7350;font-weight:750}
.ik-table-wrap{overflow:auto;border:1px solid #e9edea;border-radius:11px}
.ik-table{width:100%;border-collapse:collapse;min-width:760px;background:#fff}
.ik-table th{background:#f7f9f7;color:#8a948e;font-size:8.5px;letter-spacing:.06em;text-transform:uppercase;padding:10px 12px;border:0;border-bottom:1px solid #e9edea;text-align:left}
.ik-table td{padding:11px 12px;border-bottom:1px solid #f0f2f0;font-size:10px;color:#506057}
.ik-table tr:last-child td{border-bottom:0}
.ik-table tbody tr:hover{background:#fbfcfb}
.ik-inv-name{display:flex;align-items:center;gap:8px}
.ik-inv-thumb{width:34px;height:34px;border-radius:8px;background:linear-gradient(145deg,#e9dcc3,#c8d8cc);border:1px solid #e7e4dc}
.ik-inv-name strong{display:block;color:#2a3d31;font-size:10px}
.ik-inv-name small{display:block;color:#919a94;font-size:8px;margin-top:2px}
.ik-status{
  display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;background:#edf1ee;color:#69746d;font-size:8.5px;font-weight:750
}
.ik-status.published,.ik-status.paid,.ik-status.yes{background:#dcf2e4;color:#277045}
.ik-status.draft,.ik-status.pending{background:#f0f2f0;color:#717b74}
.ik-row-actions{display:flex;gap:5px;justify-content:flex-end}
.ik-action{width:28px;height:28px;border-radius:8px;border:1px solid #e3e8e4;background:#fff;color:#637069;display:grid;place-items:center}
.ik-action svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8}

/* Theme Store */
.ik-search-bar{display:flex;align-items:center;gap:10px;margin-bottom:15px}
.ik-search-box{flex:1;position:relative}
.ik-search-box svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:16px;height:16px;fill:none;stroke:#9aa39d;stroke-width:1.8}
.ik-search-box input{width:100%;height:43px;padding-left:38px;border-radius:10px;background:#fff}
.ik-category-pills{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:18px}
.ik-category-pills a{padding:7px 12px;border:1px solid #e1e7e2;border-radius:999px;background:#fff;color:#758079;font-size:9px}
.ik-category-pills a.active{background:#103b2c;color:#fff;border-color:#103b2c}
.ik-theme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.ik-theme-card{background:#fff;border:1px solid #e5eae6;border-radius:14px;overflow:hidden;box-shadow:0 8px 26px rgba(28,50,39,.04);transition:.2s ease}
.ik-theme-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(28,50,39,.09)}
.ik-theme-visual{height:245px;position:relative;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;background:linear-gradient(145deg,#eef3ed,#d9e4db);overflow:hidden}
.ik-theme-visual.has-image{background-size:cover;background-position:center}
.ik-theme-visual::after{content:"";position:absolute;inset:12px;border:1px solid rgba(255,255,255,.55);border-radius:10px}
.ik-theme-visual.theme-gold{background:radial-gradient(circle at 10% 10%,#fff5dd,transparent 35%),linear-gradient(145deg,#f2e3c7,#c9a66e)}
.ik-theme-visual.theme-emerald{background:radial-gradient(circle at 30% 20%,#36785e,transparent 35%),linear-gradient(145deg,#164a37,#0b2e23);color:#f2e5c5}
.ik-theme-visual.theme-rose{background:radial-gradient(circle at top left,#fff,transparent 35%),linear-gradient(145deg,#f5e2e4,#dabdc5)}
.ik-theme-visual.theme-classic{background:linear-gradient(145deg,#e9dbc7,#bda47e)}
.ik-theme-visual strong{position:relative;z-index:2;font-family:var(--ik14-serif);font-size:25px;max-width:90%;line-height:1.1}
.ik-theme-badge{position:absolute;left:10px;top:10px;z-index:3;padding:5px 8px;border-radius:999px;background:#f5e6bd;color:#75531f;font-size:8px;font-weight:800}
.ik-theme-badge.free{background:#ddf4e5;color:#267142}
.ik-theme-like{position:absolute;right:10px;top:10px;z-index:3;width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.86);color:#526159}
.ik-theme-meta2{padding:12px}
.ik-theme-meta2 h3{font-family:var(--ik14-serif);font-size:16px;margin:0 0 5px;color:#22382d}
.ik-tags{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:10px}
.ik-tag{font-size:7.5px;padding:4px 6px;border-radius:5px;background:#f3f5f3;color:#818b84}
.ik-theme-meta2 .ik-btn{width:100%}

/* Forms */
.ik-form-card{background:#fff;border:1px solid #e5ebe6;border-radius:16px;padding:24px;box-shadow:0 10px 30px rgba(28,50,39,.035)}
.ik-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ik-form-grid .full{grid-column:1/-1}
.ik-form-card label{margin:0;display:grid;gap:7px;font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#68756d;font-weight:750}
.ik-form-card input,.ik-form-card select,.ik-form-card textarea{margin:0;border-radius:9px;background:#fbfcfb}
.ik-form-note{padding:12px;border-radius:10px;background:#faf7f0;color:#8a744d;font-size:10px;border:1px solid #efe2c7}

/* Auth */
.ik-auth-page{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:#fff}
.ik-auth-art{position:relative;overflow:hidden;background:linear-gradient(145deg,#0f3d2d,#1d6548);padding:55px;display:flex;flex-direction:column;justify-content:space-between;color:#fff}
.ik-auth-art::before{content:"";position:absolute;width:560px;height:560px;border-radius:50%;right:-170px;top:-120px;border:1px solid rgba(232,213,176,.25);box-shadow:0 0 0 70px rgba(232,213,176,.04),0 0 0 140px rgba(232,213,176,.025)}
.ik-auth-art .ik-logo-text strong{color:#fff}
.ik-auth-art .ik-logo-text small{color:#d4ded7}
.ik-auth-art .ik-logo-mark svg>path:not(:first-child){fill:#d5b26f}
.ik-auth-art-copy{position:relative;z-index:2;max-width:540px}
.ik-auth-art-copy h2{font-family:var(--ik14-serif);font-size:46px;line-height:1.05;letter-spacing:-2px;margin:0 0 14px}
.ik-auth-art-copy p{color:#ccd9d1;line-height:1.7;font-size:13px}
.ik-auth-quote{position:relative;z-index:2;font-family:var(--ik14-serif);font-style:italic;color:#eadcc0}
.ik-auth-form-wrap{display:grid;place-items:center;padding:45px}
.ik-auth-card{width:min(430px,100%)}
.ik-auth-card .ik-logo{margin-bottom:32px}
.ik-auth-card h1{font-family:var(--ik14-serif);font-size:36px;letter-spacing:-1.7px;margin:0 0 7px}
.ik-auth-card>p{color:#7b877f;font-size:12px;margin-bottom:26px}
.ik-auth-card form{display:grid;gap:14px}
.ik-auth-card label{display:grid;gap:7px;font-size:10px;color:#536158;font-weight:700}
.ik-auth-card input{margin:0}
.ik-auth-foot{text-align:center;font-size:11px;color:#8b958f;margin-top:20px}
.ik-auth-foot a{color:#1b6748;font-weight:800}

/* Existing panels/editor/checkin refinement */
body.ik-app .dashboard,body.ik-app .editor-layout,body.ik-app .checkin-page{max-width:none;margin:0;padding:28px 32px 70px}
body.ik-app .nav{display:none}
body.ik-app .dash-title{background:#fff;border-radius:16px;box-shadow:none;border-color:#e7ece8;padding:22px}
body.ik-app .panel{border-radius:14px;box-shadow:0 8px 25px rgba(28,50,39,.035);border-color:#e7ece8}
body.ik-app .editor-layout{grid-template-columns:minmax(0,1fr) 340px;gap:22px}
body.ik-app .editor-panel{border-radius:14px}
body.ik-app .preview-phone{border-radius:32px;box-shadow:0 22px 60px rgba(20,42,31,.17)}
body.ik-app .preview-phone iframe{border-radius:24px}
body.ik-app .quota-banner{border-radius:13px}
body.ik-app .qr-modal-card{border-radius:18px}

/* Responsive */
@media(max-width:1180px){
  .ik-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ik-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ik-luxury-hero{grid-template-columns:1fr 420px}
  .ik-invite-card{width:300px}
  .ik-phone{width:210px;height:430px}
}
@media(max-width:920px){
  .ik-app-shell{grid-template-columns:1fr}
  .ik-sidebar{display:none}
  .ik-mobile-head{height:68px;padding:0 18px;background:#fff;border-bottom:1px solid #e7ece8;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:30}
  .ik-topbar{display:none}
  .ik-content{padding:24px 18px 60px}
  .ik-luxury-hero{grid-template-columns:1fr;padding-top:55px}
  .ik-showcase{min-height:500px}
  .ik-landing-stats{grid-template-columns:repeat(2,1fr);margin:0 18px}
  .ik-feature-grid{grid-template-columns:1fr}
  .ik-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.ik-app .dashboard,body.ik-app .editor-layout,body.ik-app .checkin-page{padding:24px 18px 60px}
  body.ik-app .editor-layout{grid-template-columns:1fr}
  .ik-auth-page{grid-template-columns:1fr}
  .ik-auth-art{display:none}
}
@media(max-width:620px){
  .ik-public-nav{height:70px;padding:0 16px}
  .ik-public-links>a:not(.btn){display:none}
  .ik-logo-text small{display:none}
  .ik-logo-text strong{font-size:25px}
  .ik-luxury-hero{padding:45px 18px 60px}
  .ik-hero-copy h1{font-size:47px;letter-spacing:-2.5px}
  .ik-hero-copy p{font-size:14px}
  .ik-trust-row{flex-wrap:wrap;gap:12px}
  .ik-showcase{min-height:420px}
  .ik-invite-card{left:0;top:50px;width:245px;height:340px;padding:46px 24px}
  .ik-invite-card h3{font-size:30px;margin:28px 0 12px}
  .ik-phone{width:175px;height:350px;right:0}
  .ik-landing-stats{grid-template-columns:1fr 1fr}
  .ik-landing-stats>div{padding:16px 10px}
  .ik-section{padding:70px 18px}
  .ik-section-head h2{font-size:38px}
  .ik-welcome,.ik-page-head{flex-direction:column}
  .ik-page-actions{width:100%;flex-wrap:wrap}
  .ik-page-actions .ik-btn{flex:1}
  .ik-stat-grid{grid-template-columns:1fr 1fr}
  .ik-theme-grid{grid-template-columns:1fr}
  .ik-form-grid{grid-template-columns:1fr}
  .ik-form-grid .full{grid-column:auto}
  .ik-auth-form-wrap{padding:30px 20px}
}


/* InviteKu V14.1 — real theme thumbnail images */
.ik-theme-visual{height:auto;aspect-ratio:3/4;background:#eef2ed;isolation:isolate}
.ik-theme-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0;transition:transform .35s ease,filter .35s ease}
.ik-theme-card:hover .ik-theme-image{transform:scale(1.025)}
.ik-theme-image-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(16,36,26,.03) 55%,rgba(9,27,18,.18) 100%);pointer-events:none}
.ik-theme-badge,.ik-theme-like{z-index:3}
.ik-theme-like{border:0;cursor:pointer;font-family:inherit;font-size:16px}
.ik-theme-preview-btn{position:absolute;z-index:4;left:50%;bottom:16px;transform:translate(-50%,8px);opacity:0;min-width:112px;height:36px;padding:0 14px;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);color:#17392c;font-size:10px;font-weight:800;cursor:pointer;transition:.2s ease;box-shadow:0 8px 24px rgba(15,42,29,.13)}
.ik-theme-card:hover .ik-theme-preview-btn{opacity:1;transform:translate(-50%,0)}
.ik-theme-card-actions{display:grid;grid-template-columns:minmax(80px,.72fr) minmax(120px,1.28fr);gap:7px}
.ik-theme-card-actions .ik-btn{width:100%;padding-left:8px;padding-right:8px}
.ik-theme-modal{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:28px}
.ik-theme-modal.show{display:flex}
.ik-theme-modal-backdrop{position:absolute;inset:0;background:rgba(8,24,16,.68);backdrop-filter:blur(10px)}
.ik-theme-modal-dialog{position:relative;z-index:1;width:min(900px,100%);max-height:90vh;display:grid;grid-template-columns:minmax(300px,1fr) minmax(280px,.68fr);overflow:hidden;background:#fff;border:1px solid rgba(255,255,255,.6);border-radius:24px;box-shadow:0 40px 120px rgba(0,0,0,.28)}
.ik-theme-modal-image-wrap{min-height:600px;background:#eef2ed;overflow:hidden}
.ik-theme-modal-image-wrap img{width:100%;height:100%;display:block;object-fit:cover}
.ik-theme-modal-info{padding:40px 34px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.ik-theme-modal-info h2{font-family:var(--ik14-serif);font-size:34px;line-height:1.05;margin:14px 0 12px;color:#17372b}
.ik-theme-modal-info p{font-size:12px;line-height:1.7;color:#7a867f;margin:0 0 24px}
.ik-theme-modal-close{position:absolute;right:14px;top:14px;z-index:5;width:36px;height:36px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:#25382e;font-size:22px;cursor:pointer;box-shadow:0 7px 22px rgba(0,0,0,.12)}
.ik-selected-theme-preview{margin-top:2px;padding:12px;border:1px solid #e6ebe7;border-radius:12px;background:#fafbf9;display:flex;align-items:center;gap:14px}
.ik-selected-theme-preview[hidden]{display:none}
.ik-selected-theme-preview img{width:86px;aspect-ratio:3/4;object-fit:cover;border-radius:9px;border:1px solid #e4e8e4;box-shadow:0 7px 20px rgba(28,50,39,.08)}
.ik-selected-theme-preview>div{display:flex;flex-direction:column;align-items:flex-start}
.ik-selected-theme-preview strong{font-family:var(--ik14-serif);font-size:21px;color:#17372b;margin:5px 0}
.ik-selected-theme-preview small{color:#849087;font-size:10px;line-height:1.5}
@media(max-width:720px){.ik-theme-card-actions{grid-template-columns:1fr}.ik-theme-preview-btn{opacity:1;transform:translate(-50%,0)}.ik-theme-modal-dialog{grid-template-columns:1fr;max-width:430px;overflow:auto}.ik-theme-modal-image-wrap{min-height:0;aspect-ratio:3/4}.ik-theme-modal-info{padding:24px}.ik-theme-modal-info h2{font-size:28px}}


/* ================= InviteKu V14.2 — 46 Animated Themes ================= */
.ik-theme-card{--fx:#fff;--fx2:#d8b974}
.ik-theme-grid{align-items:stretch}
.ik-theme-visual{isolation:isolate}
.ik-theme-image{width:100%;height:100%;object-fit:cover;object-position:center;animation:ikThemeKenBurns 13s ease-in-out infinite alternate;will-change:transform;display:block}
.ik-theme-card:nth-child(3n) .ik-theme-image{animation-duration:16s;animation-direction:alternate-reverse}
.ik-theme-card:nth-child(4n) .ik-theme-image{animation-duration:11s}
@keyframes ikThemeKenBurns{from{transform:scale(1.01) translate3d(0,0,0)}to{transform:scale(1.075) translate3d(-1.4%,1.2%,0)}}

.ik-theme-fx{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none}
.ik-theme-fx i{position:absolute;display:block;opacity:.2;will-change:transform,opacity}
.ik-theme-fx i:nth-child(1){left:10%;top:8%;animation-delay:-1s}
.ik-theme-fx i:nth-child(2){left:28%;top:18%;animation-delay:-3s}
.ik-theme-fx i:nth-child(3){left:72%;top:10%;animation-delay:-5s}
.ik-theme-fx i:nth-child(4){left:84%;top:35%;animation-delay:-2s}
.ik-theme-fx i:nth-child(5){left:17%;top:55%;animation-delay:-6s}
.ik-theme-fx i:nth-child(6){left:64%;top:70%;animation-delay:-4s}
.ik-theme-fx i:nth-child(7){left:38%;top:82%;animation-delay:-7s}
.ik-theme-fx i:nth-child(8){left:90%;top:82%;animation-delay:-2.5s}

.anim-petals .ik-theme-fx i,.anim-leaves .ik-theme-fx i{width:10px;height:16px;border-radius:100% 0 100% 0;background:rgba(255,255,255,.82);animation:ikFallLeaf 5.6s ease-in-out infinite}
.anim-leaves .ik-theme-fx i{background:rgba(117,154,112,.72);width:11px;height:19px}
@keyframes ikFallLeaf{0%{opacity:0;transform:translate3d(-10px,-30px,0) rotate(0)}20%{opacity:.85}100%{opacity:0;transform:translate3d(45px,285px,0) rotate(290deg)}}

.anim-stars .ik-theme-fx i,.anim-glow .ik-theme-fx i{width:6px;height:6px;background:#fff4cf;transform:rotate(45deg);border-radius:1px;box-shadow:0 0 15px rgba(255,238,184,.75);animation:ikTwinkle 2.8s ease-in-out infinite}
@keyframes ikTwinkle{0%,100%{opacity:.18;transform:scale(.45) rotate(45deg)}50%{opacity:1;transform:scale(1.25) rotate(45deg)}}

.anim-confetti .ik-theme-fx i{width:5px;height:13px;border-radius:2px;background:#fff;animation:ikConfetti 4.8s linear infinite}
.anim-confetti .ik-theme-fx i:nth-child(2n){background:#f0b1c7}.anim-confetti .ik-theme-fx i:nth-child(3n){background:#e3c06e}
@keyframes ikConfetti{0%{opacity:0;transform:translateY(-45px) rotate(0)}10%{opacity:.95}100%{opacity:0;transform:translateY(300px) rotate(520deg)}}

.anim-bubbles .ik-theme-fx i{width:22px;height:22px;border:1px solid rgba(255,255,255,.72);border-radius:50%;animation:ikBubble 5.5s ease-in-out infinite}
.anim-bubbles .ik-theme-fx i:nth-child(2n){width:13px;height:13px}
@keyframes ikBubble{0%{opacity:0;transform:translateY(80px) scale(.5)}30%{opacity:.7}100%{opacity:0;transform:translateY(-170px) translateX(28px) scale(1.25)}}

.anim-shimmer .ik-theme-visual::before{content:"";position:absolute;z-index:2;inset:-35% -55%;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.36) 50%,transparent 65%);transform:translateX(-65%) rotate(4deg);animation:ikShimmer 4.5s ease-in-out infinite;pointer-events:none}
@keyframes ikShimmer{0%,28%{transform:translateX(-68%) rotate(4deg)}70%,100%{transform:translateX(68%) rotate(4deg)}}

.anim-aurora .ik-theme-fx::before,.anim-aurora .ik-theme-fx::after{content:"";position:absolute;width:75%;height:65%;border-radius:50%;filter:blur(34px);opacity:.28;animation:ikAurora 7s ease-in-out infinite alternate}
.anim-aurora .ik-theme-fx::before{left:-25%;top:0;background:#73d5b9}
.anim-aurora .ik-theme-fx::after{right:-25%;bottom:0;background:#8e8ce5;animation-delay:-3s}
@keyframes ikAurora{to{transform:translate3d(35px,25px,0) scale(1.2);opacity:.48}}

.anim-slide .ik-theme-image{animation:ikSlideImage 9s ease-in-out infinite alternate}
@keyframes ikSlideImage{from{transform:scale(1.08) translateX(-2%)}to{transform:scale(1.08) translateX(2%)}}
.anim-zoom .ik-theme-image{animation:ikZoomImage 7s ease-in-out infinite alternate}
@keyframes ikZoomImage{from{transform:scale(1)}to{transform:scale(1.11)}}
.anim-float .ik-theme-image{animation:ikFloatImage 8s ease-in-out infinite}
@keyframes ikFloatImage{0%,100%{transform:scale(1.04) translateY(0)}50%{transform:scale(1.06) translateY(-8px)}}
.anim-glow .ik-theme-visual{animation:ikCardGlow 4s ease-in-out infinite}
@keyframes ikCardGlow{50%{box-shadow:inset 0 0 70px rgba(236,205,139,.22)}}

.ik-animation-chip{display:inline-flex;align-items:center;gap:5px;font-size:10px;padding:5px 8px;border-radius:7px;background:#f7f0e3;color:#92703e;white-space:nowrap}
.ik-animation-chip::before{content:"✦";font-size:8px}
.ik-theme-card-actions{display:flex;gap:10px;flex-wrap:wrap}
.ik-theme-preview-btn{position:absolute;left:18px;bottom:18px;z-index:3;border:none;border-radius:999px;padding:9px 12px;background:rgba(255,255,255,.92);color:#163728;font-weight:700;font-size:11px;cursor:pointer;box-shadow:0 12px 30px rgba(0,0,0,.10)}
.ik-theme-preview-btn:hover{transform:translateY(-1px)}
.ik-theme-modal-dialog.anim-petals .ik-theme-modal-image-wrap img,
.ik-theme-modal-dialog.anim-leaves .ik-theme-modal-image-wrap img,
.ik-theme-modal-dialog.anim-stars .ik-theme-modal-image-wrap img,
.ik-theme-modal-dialog.anim-shimmer .ik-theme-modal-image-wrap img,
.ik-theme-modal-dialog.anim-confetti .ik-theme-modal-image-wrap img,
.ik-theme-modal-dialog.anim-aurora .ik-theme-modal-image-wrap img,
.ik-theme-modal-dialog.anim-bubbles .ik-theme-modal-image-wrap img,
.ik-theme-modal-dialog.anim-slide .ik-theme-modal-image-wrap img,
.ik-theme-modal-dialog.anim-zoom .ik-theme-modal-image-wrap img,
.ik-theme-modal-dialog.anim-glow .ik-theme-modal-image-wrap img{animation:ikModalFloat 8s ease-in-out infinite alternate}
@keyframes ikModalFloat{from{transform:scale(1.01)}to{transform:scale(1.06)}}
.ik-selected-theme-preview{position:relative;overflow:hidden}
.ik-selected-theme-preview img{animation:ikSelectedPreview 7s ease-in-out infinite alternate}
@keyframes ikSelectedPreview{to{transform:scale(1.045)}}
@media(min-width:1450px){.ik-theme-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1180px){.ik-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.ik-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ik-theme-meta2{padding:10px}.ik-theme-meta2 h3{font-size:14px}.ik-theme-preview-btn{padding:8px 10px;font-size:10px}}
@media(max-width:480px){.ik-theme-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.ik-theme-image,.ik-theme-fx i,.anim-shimmer .ik-theme-visual::before,.anim-aurora .ik-theme-fx::before,.anim-aurora .ik-theme-fx::after,.ik-selected-theme-preview img{animation:none!important}}


/* ===============================================================
   InviteKu V14.3 — Desktop Compact 80%
   Mengurangi skala visual desktop ±20% tanpa mengubah mobile.
   =============================================================== */
@media (min-width: 921px){
  /* Global desktop rhythm */
  body{font-size:80%}

  /* Main application shell */
  .ik-app-shell{grid-template-columns:195px minmax(0,1fr)}
  .ik-sidebar{padding:18px 13px 14px}
  .ik-sidebar-logo{padding:3px 6px 20px}
  .ik-logo{gap:7px}
  .ik-logo-mark{width:30px;height:35px}
  .ik-logo-text strong{font-size:23px;letter-spacing:-1px}
  .ik-logo-text small{font-size:5.6px;letter-spacing:1.8px;margin-top:4px}
  .ik-side-nav{gap:5px}
  .ik-side-nav>a{min-height:37px;padding:0 10px;border-radius:9px;gap:9px;font-size:10.4px}
  .ik-nav-icon{width:17px;height:17px}
  .ik-nav-icon svg{width:14px;height:14px}
  .ik-side-plan{margin-bottom:11px;padding:14px 12px;border-radius:13px}
  .ik-side-plan-icon{margin-bottom:6px}
  .ik-side-plan strong{font-size:13.6px}
  .ik-side-plan small{font-size:8px;line-height:1.5;margin:4px 0 8px}
  .ik-side-plan a{font-size:8.8px}
  .ik-side-bottom{padding-top:9px}
  .ik-side-user{gap:7px;padding:5px 4px 9px}
  .ik-side-user strong{font-size:9.6px}
  .ik-side-user small{font-size:7.2px}
  .ik-logout{gap:7px;font-size:8.8px;padding:6px 4px}

  .ik-topbar{height:61px;padding:0 24px}
  .ik-top-actions{gap:8px}
  .ik-icon-btn{width:31px;height:31px;border-radius:8px}
  .ik-icon-btn svg{width:14px;height:14px}
  .ik-avatar{width:29px;height:29px;font-size:8.8px}
  .ik-user-chip{gap:7px;padding:4px 7px 4px 4px;border-radius:10px}
  .ik-user-chip strong{font-size:8.8px}
  .ik-user-chip small{font-size:6.5px;margin-top:2px}
  .ik-chevron{font-size:10px;margin-left:4px}

  .ik-content{padding:24px 26px 56px;max-width:1600px}
  .ik-page-head{gap:16px;margin-bottom:20px}
  .ik-page-title{max-width:720px}
  .ik-page-title .ik-kicker,.ik-kicker{font-size:7.5px;letter-spacing:1.65px}
  .ik-kicker::before{width:27px}
  .ik-page-title h1{font-size:30px;letter-spacing:-1.35px;margin:7px 0 5px}
  .ik-page-title p{font-size:9.6px;line-height:1.55}
  .ik-page-actions{gap:6px}

  .ik-btn{min-height:34px;border-radius:8px;padding:0 13px;gap:6px;font-size:9.6px;box-shadow:0 6px 16px rgba(16,59,44,.12)}
  .ik-btn.small{min-height:28px;padding:0 9px;font-size:8px}
  .ik-btn svg{width:13px;height:13px}

  /* Search and filter */
  .ik-search-bar{gap:8px;margin-bottom:12px}
  .ik-search-box svg{left:10px;width:13px;height:13px}
  .ik-search-box input{height:34px;padding-left:31px;border-radius:8px;font-size:10px}
  .ik-category-pills{gap:6px;margin-bottom:14px}
  .ik-category-pills a{padding:6px 10px;font-size:7.5px}

  /* Dashboard */
  .ik-welcome{gap:16px;margin-bottom:18px}
  .ik-welcome h1{font-size:28px;letter-spacing:-1.2px;margin-bottom:4px}
  .ik-welcome p{font-size:8.8px}
  .ik-stat-grid{gap:11px;margin-bottom:18px}
  .ik-stat-card{min-height:94px;border-radius:11px;padding:14px}
  .ik-stat-icon{width:27px;height:27px;border-radius:8px;margin-bottom:9px}
  .ik-stat-icon svg{width:14px;height:14px}
  .ik-stat-card strong{font-size:22px}
  .ik-stat-card span{font-size:8px;margin-top:4px}
  .ik-progress{height:4px}
  .ik-dashboard-panel{border-radius:13px;padding:16px}
  .ik-panel-head{gap:12px;margin-bottom:12px}
  .ik-panel-head h2{font-size:16px}
  .ik-panel-head>a{font-size:8px}
  .ik-table-wrap{border-radius:9px}
  .ik-table{min-width:650px}
  .ik-table th{font-size:7px;padding:8px 10px}
  .ik-table td{padding:9px 10px;font-size:8px}
  .ik-inv-name{gap:6px}
  .ik-inv-thumb{width:27px;height:27px;border-radius:6px}
  .ik-inv-name strong{font-size:8px}
  .ik-inv-name small{font-size:6.4px}
  .ik-status{min-height:18px;padding:0 6px;font-size:6.8px}
  .ik-row-actions{gap:4px}
  .ik-action{width:23px;height:23px;border-radius:6px}
  .ik-action svg{width:10px;height:10px}

  /* Theme store: much denser on desktop */
  .ik-theme-grid{gap:12px}
  .ik-theme-card{border-radius:11px}
  .ik-theme-visual{border-radius:0;aspect-ratio:3/4}
  .ik-theme-visual::after{inset:9px;border-radius:8px}
  .ik-theme-badge{left:8px;top:8px;padding:4px 6px;font-size:6.5px}
  .ik-theme-like{right:8px;top:8px;width:22px;height:22px;font-size:11px}
  .ik-theme-preview-btn{left:13px;bottom:13px;padding:7px 10px;font-size:8.5px}
  .ik-theme-meta2{padding:9px}
  .ik-theme-meta2 h3{font-size:13px;margin-bottom:4px}
  .ik-tags{gap:4px;margin-bottom:8px}
  .ik-tag{font-size:6px;padding:3px 5px}
  .ik-animation-chip{font-size:6px;padding:3px 5px;border-radius:5px}
  .ik-theme-card-actions{gap:7px}

  /* Form/editor */
  .ik-form-card{border-radius:13px;padding:19px}
  .ik-form-grid{gap:13px}
  .ik-form-card label{gap:6px;font-size:7.2px}
  .ik-form-card input,.ik-form-card select,.ik-form-card textarea,
  input,select,textarea{min-height:39px;padding:10px 11px;border-radius:10px;font-size:10px}
  .ik-form-note{padding:10px;border-radius:8px;font-size:8px}
  .ik-selected-theme-preview{padding:10px;gap:11px;border-radius:10px}
  .ik-selected-theme-preview img{width:69px;border-radius:7px}
  .ik-selected-theme-preview strong{font-size:17px;margin:4px 0}
  .ik-selected-theme-preview small{font-size:8px}

  body.ik-app .dashboard,body.ik-app .editor-layout,body.ik-app .checkin-page{padding:22px 26px 56px}
  body.ik-app .editor-layout{grid-template-columns:minmax(0,1fr) 272px;gap:18px}
  body.ik-app .editor-panel{padding:24px;border-radius:11px}
  body.ik-app .preview-phone{border-radius:26px;padding:7px}
  body.ik-app .preview-phone iframe{border-radius:19px}

  /* Pricing/payment */
  .pricing-grid{gap:16px}
  .pricing-card{border-radius:21px;padding:24px}
  .pricing-price{font-size:34px}
  .checkout-card,.payment-status-card{border-radius:22px}

  /* Public landing page */
  .ik-public-nav{height:67px;padding:0 clamp(20px,5vw,77px)}
  .ik-public-links{gap:22px}
  .ik-public-links>a:not(.btn){font-size:10.4px}
  .ik-luxury-hero{min-height:560px;gap:40px;padding:56px clamp(22px,5vw,75px) 67px;grid-template-columns:minmax(0,1.04fr) minmax(336px,.96fr)}
  .ik-hero-copy{max-width:610px}
  .ik-hero-copy h1{font-size:clamp(43px,4.55vw,72px);letter-spacing:-3.35px;margin:18px 0}
  .ik-hero-copy p{font-size:13.6px;line-height:1.7;max-width:520px}
  .ik-hero-actions{gap:10px;margin-top:24px}
  .ik-trust-row{gap:20px;margin-top:28px;padding-top:19px}
  .ik-trust-item{gap:7px;font-size:9.6px}
  .ik-trust-icon{width:25px;height:25px;font-size:12px}
  .ik-showcase{min-height:456px}
  .ik-invite-card{left:5%;top:56px;width:284px;height:372px;padding:48px 30px}
  .ik-invite-card::before{inset:14px}
  .ik-invite-card small{font-size:7.2px;letter-spacing:2px}
  .ik-invite-card h3{font-size:32px;margin:30px 0 13px}
  .ik-phone{right:2%;bottom:12px;width:196px;height:392px;border-radius:30px;padding:7px}
  .ik-phone-screen{border-radius:24px;padding:19px}
  .ik-phone-screen small{font-size:7px}
  .ik-phone-screen h4{font-size:22px;margin:18px 0}
  .ik-phone-screen p{font-size:8.8px}
  .ik-phone-screen .mini-cta{margin-top:16px;padding:7px 13px;font-size:8px}
  .ik-landing-stats{max-width:930px;margin:-22px auto 0;border-radius:16px}
  .ik-landing-stats>div{padding:18px 20px}
  .ik-landing-stats strong{font-size:21px}
  .ik-landing-stats span{font-size:8.8px}
  .ik-section{padding:80px clamp(20px,5vw,75px)}
  .ik-section-head{max-width:610px;margin-bottom:27px}
  .ik-section-head h2{font-size:38px;letter-spacing:-1.6px;margin:10px 0}
  .ik-section-head p{font-size:10.5px}
  .ik-feature-grid{gap:18px}
  .ik-feature-card{border-radius:17px;padding:21px}
  .ik-feature-card span{width:34px;height:34px;border-radius:11px;margin-bottom:14px}
  .ik-feature-card h3{font-size:19px;margin-bottom:6px}
  .ik-feature-card p{font-size:10.4px}
  .ik-footer{padding:28px clamp(20px,5vw,75px)}

  /* Login / register */
  .ik-auth-art{padding:44px}
  .ik-auth-art-copy{max-width:430px}
  .ik-auth-art-copy h2{font-size:37px;letter-spacing:-1.6px;margin-bottom:11px}
  .ik-auth-art-copy p{font-size:10.4px}
  .ik-auth-form-wrap{padding:36px}
  .ik-auth-card{width:min(344px,100%)}
  .ik-auth-card .ik-logo{margin-bottom:26px}
  .ik-auth-card h1{font-size:29px;letter-spacing:-1.35px}
  .ik-auth-card>p{font-size:9.6px;margin-bottom:21px}
  .ik-auth-card form{gap:11px}
  .ik-auth-card label{gap:6px;font-size:8px}
  .ik-auth-foot{font-size:8.8px;margin-top:16px}
}

@media (min-width: 1550px){
  .ik-theme-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
}
@media (min-width: 1180px) and (max-width:1549px){
  .ik-theme-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}


/* ================================================================
   InviteKu V14.3.21 — GLOBAL TABLE TYPOGRAPHY
   Perbesar font tabel di seluruh halaman InviteKu.
   ================================================================ */

/* User App tables */
.ik-table,
.table-wrap table,
.checkin-table,
.guest-table,
.data-table{
    font-size:13.5px!important;
}

.ik-table thead th,
.table-wrap table thead th,
.checkin-table thead th,
.guest-table thead th,
.data-table thead th{
    font-size:12px!important;
    font-weight:800!important;
    line-height:1.35!important;
    letter-spacing:.03em!important;
    padding:13px 14px!important;
}

.ik-table tbody td,
.table-wrap table tbody td,
.checkin-table tbody td,
.guest-table tbody td,
.data-table tbody td{
    font-size:13.5px!important;
    line-height:1.45!important;
    padding:14px!important;
}

/* Nama / informasi tambahan dalam tabel */
.ik-table td strong,
.ik-table td a,
.table-wrap td strong,
.table-wrap td a,
.checkin-table td strong,
.checkin-table td a{
    font-size:13.5px!important;
}

.ik-table .table-sub,
.table-wrap .table-sub,
.checkin-table .table-sub,
.table-sub{
    font-size:11.5px!important;
    line-height:1.4!important;
}

/* Badge status dalam tabel */
.ik-table .ik-status,
.ik-table .status,
.table-wrap .status,
.checkin-table .status,
.admin-wide-table .status{
    font-size:11.5px!important;
    min-height:26px!important;
    padding:5px 10px!important;
}

/* Tombol action kecil tetap terbaca */
.ik-table .mini-btn,
.table-wrap .mini-btn,
.checkin-table .mini-btn{
    font-size:12px!important;
    min-height:32px!important;
}

/* Tabel Admin.
   admin.css dimuat setelah app.css, tetapi aturan ini memakai !important. */
.admin-main table,
.admin-wide-table{
    font-size:13.5px!important;
}

.admin-main table thead th,
.admin-wide-table thead th{
    font-size:12px!important;
    font-weight:800!important;
    line-height:1.35!important;
}

.admin-main table tbody td,
.admin-wide-table tbody td{
    font-size:13.5px!important;
    line-height:1.45!important;
}

.admin-main table .table-sub,
.admin-wide-table .table-sub{
    font-size:11.5px!important;
}

.admin-main table .status,
.admin-wide-table .status{
    font-size:11.5px!important;
}

/* Override aturan mobile lama yang sebelumnya membuat tabel sangat kecil. */
@media(max-width:700px){
    .ik-table thead th,
    .table-wrap table thead th,
    .checkin-table thead th,
    .admin-main table thead th{
        font-size:11.5px!important;
        padding:11px 12px!important;
    }

    .ik-table tbody td,
    .table-wrap table tbody td,
    .checkin-table tbody td,
    .admin-main table tbody td{
        font-size:12.5px!important;
        padding:12px!important;
    }

    .table-sub,
    .ik-table .table-sub,
    .admin-main table .table-sub{
        font-size:10.5px!important;
    }
}
