:root{--bg:#f6f3ed;--ink:#211d22;--card:#fffdf9;--plum:#552844;--coral:#ef6d51;--line:#e4ddd4;--muted:#786e74;--green:#67a66d}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{transition:.2s}.brand-mark{width:31px;height:31px;border:1.5px solid currentColor;border-radius:50% 50% 50% 8px;display:grid;place-items:center;transform:rotate(-7deg)}.brand-mark i{width:10px;height:10px;border-radius:50%;background:var(--coral)}.eyebrow{margin:0 0 8px!important;color:#a04c6e!important;font-size:9px!important;font-weight:800!important;letter-spacing:.14em!important}
/* installer + login */
.installer-page,.login-page{min-height:100vh;padding:28px;display:grid;place-items:center;background:radial-gradient(circle at 14% 10%,#efd5dc,transparent 35%),radial-gradient(circle at 90% 88%,#f7d8bf,transparent 38%),#f4f0ea}.installer-card,.login-card{width:min(100%,660px);padding:42px;border:1px solid #e2d8d0;border-radius:28px;background:rgba(255,253,249,.94);box-shadow:0 28px 80px rgba(65,34,52,.14)}.install-brand,.login-brand{display:flex;align-items:center;justify-content:center;gap:9px;font:600 22px Georgia,serif}.install-brand>span:last-child,.login-brand>span:last-child{color:var(--coral)}.installer-card>h1,.login-card h1{margin:9px 0;font:600 31px/1.1 Georgia,serif;text-align:center}.installer-card>p,.login-card>p{text-align:center;color:var(--muted);font-size:12px;line-height:1.6}.installer-card>.eyebrow,.login-card>.eyebrow{text-align:center;margin-top:29px!important}.install-form{margin-top:26px;display:grid;gap:20px}.install-form fieldset{padding:20px;border:1px solid var(--line);border-radius:16px}.install-form legend{padding:0 8px;font:600 15px Georgia,serif}.install-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.install-grid label,.login-card label,.form-grid label{display:grid;gap:6px;font-size:10px;font-weight:700;color:#53434c}.install-grid label.full{grid-column:1/-1}.install-grid input,.login-card input,.form-grid input,.form-grid select,.form-grid textarea,.button-editor input,.button-editor select{width:100%;min-height:41px;padding:0 11px;border:1px solid #dcd1c9;border-radius:10px;background:white;outline:none;color:var(--ink)}.install-grid input:focus,.login-card input:focus,.form-grid input:focus,.form-grid textarea:focus{border-color:#9f6b87;box-shadow:0 0 0 3px #eee0e7}.install-grid small{color:#968a91;font-weight:400}.install-button,.login-card form button{min-height:46px;border:0;border-radius:12px;background:var(--plum);color:#fff;display:flex;align-items:center;justify-content:center;gap:8px;font-size:11px;font-weight:700;cursor:pointer}.install-button:hover,.login-card form button:hover{background:#6b3755}.install-success{width:58px;height:58px;margin:27px auto 18px;border-radius:18px;background:#e3f1e5;color:#468552;display:grid;place-items:center;font-size:24px}.security-note{margin-top:22px!important;padding:11px;border-radius:10px;background:#fff2db;color:#855d1d!important}.form-error{margin:18px 0 0;padding:11px 13px;border-radius:10px;background:#fbe5e2;color:#a53e38;font-size:10px}.login-card{max-width:410px;text-align:center}.login-icon{width:48px;height:48px;margin:30px auto 20px;border-radius:15px;background:#eee0e7;color:#61334e;display:grid;place-items:center}.login-icon svg{width:19px}.login-card form{display:grid;gap:13px;margin-top:26px;text-align:left}.login-card>small{display:block;margin-top:25px;color:#a3979e;font-size:8px}
/* admin */
.admin-shell{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;padding:26px 18px 18px;background:#241923;color:#f7eee9;display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:10px;padding:0 9px 29px;font:700 25px Georgia,serif;letter-spacing:-1px}.brand b{color:var(--coral)}.side-nav{display:flex;flex-direction:column;gap:5px}.side-nav p{margin:20px 11px 8px;color:#8f808a;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.side-nav a{min-height:40px;display:flex;align-items:center;gap:12px;padding:0 12px;border-radius:11px;color:#b9aeb5;font-size:13px;font-weight:600}.side-nav a:hover{color:#fff;background:#342630}.side-nav a.active{color:#fff;background:#483042;box-shadow:inset 3px 0 var(--coral)}.nav-icon{width:18px;text-align:center;font-size:17px}.sidebar-card{margin-top:auto;padding:16px;border:1px solid #493742;border-radius:15px;background:#2f232c}.sidebar-card strong{font-size:12px}.sidebar-card p{margin:6px 0 13px;color:#a99da5;font-size:10px;line-height:1.45}.sidebar-card>span{display:block;height:4px;border-radius:99px;background:#4a3944}.sidebar-card>span i{display:block;width:72%;height:100%;border-radius:inherit;background:var(--coral)}.admin-profile{margin-top:16px;padding:12px 8px 0;border-top:1px solid #3e2e38;display:flex;align-items:center;gap:10px}.admin-profile>span:last-child{display:flex;flex-direction:column}.admin-profile strong{font-size:11px}.admin-profile small{color:#8f818a;font-size:9px}.avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;font-size:10px;font-weight:800}.plum{background:#e6c9db;color:#552844}.coral{background:#ffd3c9;color:#a73c27}.violet{background:#d9d4f8;color:#514894}.amber{background:#f8e4af;color:#7e5a12}.workspace{grid-column:2;min-width:0}.topbar{height:76px;padding:0 34px;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);background:rgba(255,253,249,.86);backdrop-filter:blur(14px);position:sticky;top:0;z-index:5}.search{margin-right:auto;width:min(390px,50vw);height:40px;padding:0 13px;display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:12px;background:#faf8f4}.search span{color:#978c93;font-size:18px}.search input{width:100%;border:0;outline:0;background:transparent;font-size:12px}.primary-button{min-height:40px;padding:0 16px;border-radius:12px;background:var(--plum);color:white;display:flex;align-items:center;font-size:11px;font-weight:700;box-shadow:0 8px 20px #55284426}.content{max-width:1260px;margin:0 auto;padding:42px 36px 60px}.flash{margin:-18px 0 25px;padding:12px 14px;border-radius:11px;font-size:11px;transition:.3s}.flash.success{background:#e6f2e7;color:#397044}.flash.error{background:#fbe6e2;color:#9c3d37}.flash.hide{opacity:0;transform:translateY(-8px)}.welcome-row{display:flex;justify-content:space-between;align-items:end}.welcome-row h1,.editor-head h1{margin:0;font:500 34px/1.08 Georgia,serif;letter-spacing:-1px}.welcome-row p,.editor-head p{margin:9px 0 0;color:var(--muted);font-size:12px}.live-pill{padding:8px 11px;border:1px solid var(--line);border-radius:99px;background:#fffdf9;color:#776d73;font-size:10px}.live-pill i,.status i,.publish-note>i{display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px #e3f1e5}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0 36px}.stat-card{position:relative;min-height:138px;overflow:hidden;padding:21px;border:1px solid var(--line);border-radius:18px;background:#fffdf9}.stat-card>span{display:block;color:#766d73;font-size:11px;font-weight:600}.stat-card>strong{display:block;margin:13px 0 7px;font:500 30px Georgia,serif}.stat-card>small{color:#8a8087;font-size:9px}.plum-card{background:var(--plum);color:#fff7f2;border-color:var(--plum)}.plum-card>span,.plum-card>small{color:#d9becd}.mini-orbit{position:absolute;width:120px;height:120px;border:1px solid #ffffff2b;border-radius:50%;right:-24px;bottom:-55px}.mini-orbit:after{content:'';position:absolute;width:10px;height:10px;border-radius:50%;background:var(--coral);top:20px;left:9px}.spark-bars{position:absolute;right:18px;bottom:21px;display:flex;align-items:end;gap:3px;height:35px}.spark-bars i{width:5px;border-radius:4px;background:#e3ccd8}.spark-bars i:nth-child(1){height:12px}.spark-bars i:nth-child(2){height:17px}.spark-bars i:nth-child(3){height:14px}.spark-bars i:nth-child(4){height:25px}.spark-bars i:nth-child(5){height:21px}.spark-bars i:nth-child(6){height:31px}.spark-bars i:nth-child(7){height:35px;background:var(--coral)}.renew-date{position:absolute;right:20px;bottom:20px;width:48px;height:50px;border:1px solid #eaded5;border-radius:11px;background:#fbf5ef;display:grid;place-items:center;line-height:1}.renew-date em{font:500 18px Georgia,serif;margin-top:6px}.renew-date span{font-size:7px;color:#a45b72;margin-top:-6px;font-weight:800}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:14px}.section-head h2{margin:0;font:500 21px Georgia,serif}.section-head p{margin:5px 0 0;color:#81777e;font-size:10px}.section-head>a{color:#6d3752;font-size:10px;font-weight:700}.customer-panel{border:1px solid var(--line);border-radius:18px;background:#fffdf9;overflow:hidden}.table-head,.customer-row{display:grid;grid-template-columns:minmax(170px,1.25fr) minmax(170px,1fr) 90px 95px 85px 60px;align-items:center;gap:13px;padding:0 18px}.table-head{height:40px;border-bottom:1px solid var(--line);background:#faf7f2;color:#9a9096;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.customer-row{min-height:68px;border-bottom:1px solid #eee8e1;font-size:10px}.customer-row:hover{background:#fbf5ef}.customer-name{display:flex;align-items:center;gap:10px}.customer-name>span:last-child{min-width:0;display:flex;flex-direction:column}.customer-name strong{font-size:11px}.customer-name small{margin-top:3px;color:#8b8187;font-size:9px}.slug-link{overflow:hidden;text-overflow:ellipsis;color:#6e5d67;font:9px ui-monospace,monospace}.status{display:inline-flex;width:max-content;align-items:center;padding:5px 7px;border-radius:99px;background:#edf5ed;color:#4b8053;font-size:8px;font-weight:700}.status i{width:5px;height:5px;margin-right:4px;box-shadow:none}.status.draft{background:#f0ece8;color:#81777d}.status.draft i{background:#aaa0a5}.status.expired{background:#fbe6e2;color:#a74d47}.status.expired i{background:#c85f57}.row-actions{display:flex;gap:5px}.row-actions a{width:27px;height:27px;border:1px solid var(--line);border-radius:8px;display:grid;place-items:center;background:white;color:#6c465a}.row-actions a:hover{background:#eee1e7}.add-customer{height:48px;display:flex;align-items:center;justify-content:center;color:#6d3752;font-size:9px;font-weight:700}.add-customer:hover{background:#faf5f0}.empty-row{padding:40px;text-align:center;color:#897d84;font-size:12px}
/* editor */
.editor-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px}.editor-head>a{padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:white;font-size:10px;font-weight:700}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:16px;align-items:start}.editor-main{display:grid;gap:14px}.editor-section{padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--card)}.editor-section-title{display:flex;align-items:center;gap:12px;margin-bottom:18px}.editor-section-title>span{width:31px;height:31px;border-radius:10px;background:#eee1e7;color:#74445d;display:grid;place-items:center;font:600 10px Georgia,serif}.editor-section-title h2{margin:0;font:500 18px Georgia,serif}.editor-section-title p{margin:3px 0 0;color:#887d83;font-size:9px}.upload-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:10px}.upload-tile{min-height:100px;border:1px dashed #cdbdc5;border-radius:14px;background:#f5ecf0 center/cover;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#6b3952;cursor:pointer}.upload-tile:hover{border-color:#8d5572;background-color:#efe0e7}.upload-tile input{display:none}.upload-tile strong{font-size:10px}.upload-tile small{margin-top:5px;font-size:8px;color:#9b8591}.upload-tile[style]{color:white}.upload-tile[style] small{color:#eee}.color-field{width:max-content;margin-top:12px;display:flex;align-items:center;gap:10px;font-size:9px;font-weight:700}.color-field input{width:34px;height:25px;padding:0;border:0;background:transparent}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label.full{grid-column:1/-1}.form-grid textarea{padding:10px;resize:vertical}.slug-field{display:flex;align-items:center;border:1px solid #dcd1c9;border-radius:10px;background:#fff;overflow:hidden}.slug-field small{padding-left:10px;color:#988c92;font-size:8px;font-weight:400}.slug-field input{border:0!important;box-shadow:none!important}.button-list{display:grid;gap:8px}.button-editor{display:grid;grid-template-columns:22px 120px 1fr 1.5fr 30px;gap:7px;align-items:center}.button-editor input,.button-editor select{min-height:38px;font-size:10px}.drag{color:#a699a0;cursor:grab}.remove-button{width:29px;height:29px;border:0;border-radius:8px;background:#f8e4e1;color:#a84c46;cursor:pointer}.add-action{margin-top:10px;min-height:38px;padding:0 13px;border:1px dashed #cdbdc5;border-radius:10px;background:#faf6f2;color:#6d3b54;font-size:9px;font-weight:700;cursor:pointer}.sticky-card{position:sticky;top:94px;padding:17px;border:1px solid var(--line);border-radius:18px;background:var(--card)}.mini-card{width:172px;min-height:294px;margin:10px auto 16px;border:5px solid #2a2028;border-radius:25px;background:white;text-align:center;overflow:hidden;box-shadow:0 15px 30px #41263a29}.mini-hero{height:84px;padding:18px 12px;text-align:left;background:linear-gradient(135deg,var(--theme),#9a576f);color:#fff;font-size:8px;font-weight:700;letter-spacing:.1em}.mini-avatar{width:52px;height:52px;margin:-27px auto 8px;border:3px solid white;border-radius:50%;background:#ead2de;color:var(--theme);display:grid;place-items:center;font:700 14px Georgia,serif}.mini-card h3{margin:0;font:600 14px Georgia,serif}.mini-card p{margin:4px 0 2px;color:#776b72;font-size:7px}.mini-card small{color:#9a8e95;font-size:7px}.mini-actions{display:flex;justify-content:center;gap:6px;margin:14px 0}.mini-actions i{width:25px;height:25px;border-radius:8px;background:#f3e6ec}.publish-note{padding:10px;border-radius:11px;background:#f6f1ec;display:flex;align-items:center}.publish-note>span{min-width:0;display:flex;flex-direction:column}.publish-note strong{font-size:9px}.publish-note small{margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8c7e86;font-size:7px}.save-button{width:100%;height:43px;margin-top:10px;border:0;border-radius:11px;background:var(--plum);color:#fff;font-size:10px;font-weight:700;cursor:pointer}.qr-side-link,.delete-trigger{width:100%;height:36px;margin-top:7px;border:1px solid var(--line);border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;color:#684056;font-size:9px;font-weight:700}.delete-trigger{color:#a34843;cursor:pointer}.qr-admin-card{padding:30px;border:1px solid var(--line);border-radius:22px;background:#fffdf9;display:grid;grid-template-columns:300px 1fr;gap:36px;align-items:center}.qr-admin-card #admin-qr{padding:20px;border-radius:18px;background:#f3ece5}.qr-admin-card img{display:block;width:100%;height:auto}.qr-admin-card h2{margin:7px 0;font:600 26px Georgia,serif}.qr-admin-card a{color:#74435c;font-size:11px}.qr-admin-actions{display:flex;gap:8px;margin-top:24px}.qr-admin-actions button{height:40px;padding:0 14px;border:0;border-radius:11px;background:var(--plum);color:white;font-size:10px;font-weight:700;cursor:pointer}.qr-admin-actions button+button{background:#eee1e7;color:#60374d}.qr-tip{margin-top:15px;color:#8e8188;font-size:9px}.not-found{min-height:100vh;display:grid;place-items:center;text-align:center}.not-found span{color:#aa5c76;font:700 14px Georgia,serif}.not-found h1{font:600 30px Georgia,serif}.not-found p{color:var(--muted);font-size:12px}
/* public card */
.public-card-page{position:relative;min-height:100vh;padding:38px 18px;overflow:hidden;background:#efeae2;display:flex;align-items:flex-start;justify-content:center}.ambient{position:fixed;border-radius:50%;pointer-events:none}.ambient.one{width:430px;height:430px;left:-180px;top:-140px;background:radial-gradient(circle,#e9bac6,transparent 68%)}.ambient.two{width:500px;height:500px;right:-220px;bottom:-180px;background:radial-gradient(circle,#f3c5a6,transparent 68%)}.vcard{position:relative;width:100%;max-width:440px;overflow:hidden;border:1px solid #482d3d1f;border-radius:32px;background:#fffdf9;box-shadow:0 35px 80px #341c2b29;z-index:1}.vcard-hero{position:relative;height:210px;padding:22px;background:linear-gradient(135deg,#351e30,var(--theme),#a85363);background-size:cover;background-position:center;color:#fff;overflow:hidden}.vcard-hero:after{content:'';position:absolute;width:260px;height:260px;right:-80px;top:-120px;border:1px solid #ffffff2b;border-radius:50%;box-shadow:0 0 0 35px #ffffff09,0 0 0 70px #ffffff07}.vcard-brand{display:flex;align-items:center;gap:8px;font:600 15px Georgia,serif}.vcard-brand .brand-mark{width:25px;height:25px}.vcard-brand .brand-mark i{width:7px;height:7px}.vcard-hero>button{position:absolute;right:20px;top:20px;width:38px;height:38px;border:1px solid #ffffff4d;border-radius:12px;background:#ffffff1f;color:white;display:grid;place-items:center;cursor:pointer;z-index:2}.vcard-hero>button svg{width:16px}.hero-monogram{position:absolute;right:28px;bottom:12px;font:700 77px Georgia,serif;color:#ffffff14;letter-spacing:-8px}.identity{padding:0 30px;text-align:center}.identity>img,.public-avatar{background-color: #fff; position:relative;width:100px;height:100px;margin:-54px auto 14px;border:5px solid #fffdf9;border-radius:30px;object-fit:cover;box-shadow:0 12px 30px #371f2d33}.public-avatar{display:grid;place-items:center;background:#eed4e0;color:var(--theme);font:600 28px Georgia,serif}.card-label{margin:0 0 7px!important;color:#b45c75!important;font-size:8px!important;font-weight:800;letter-spacing:.18em}.identity h1{margin:0;font:600 30px/1.1 Georgia,serif;letter-spacing:-.8px}.identity>p{margin:7px 0 4px;color:#786e74;font-size:12px}.identity>strong{font-size:13px;color:#4c3341}.address{max-width:290px;margin:15px auto 21px;padding-top:14px;border-top:1px solid #eee7df;color:#7d7379;font-size:10px;display:flex;justify-content:center;align-items:center;gap:6px}.address svg{width:13px}.card-actions{padding:0 21px;display:grid;gap:9px}.card-actions a{min-height:62px;padding:10px 12px;display:flex;align-items:center;gap:11px;border:1px solid #eee6de;border-radius:16px;background:#faf7f2}.card-actions a:hover{transform:translateY(-2px);border-color:#ddc7d2;background:#fff}.card-actions>a>span{width:39px;height:39px;display:grid;place-items:center;border-radius:12px;background:var(--theme);color:#fff}.card-actions>a>span svg{width:16px}.card-actions a:nth-child(2)>span{background:#3f9956}.card-actions>a>div{min-width:0;flex:1;display:flex;flex-direction:column}.card-actions small{color:#9b9096;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.card-actions strong{margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.card-actions b{color:#a89ca3}.card-buttons{padding:22px 21px 0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.card-buttons button{height:45px;border:0;border-radius:13px;background:var(--theme);color:white;font-size:10px;font-weight:700;cursor:pointer}.card-buttons .secondary{border:1px solid #dfd5cc;background:#fffdf9;color:#513a47}.qr-box{margin:22px 21px 0;padding:14px;border-radius:17px;background:#f1ebe4;display:flex;align-items:center;gap:14px}.qr-box img{display:block;width:82px;height:82px;border-radius:10px;background:white}.qr-box strong{font:600 14px Georgia,serif}.qr-box p{margin:4px 0 0;color:#81767c;font-size:9px}.vcard footer{padding:24px;text-align:center;color:#a59aa0;font-size:8px;display:flex;align-items:center;justify-content:center;gap:6px}.vcard footer .brand-mark{width:17px;height:17px}.vcard footer .brand-mark i{width:5px;height:5px}
@media(max-width:1020px){.admin-shell{grid-template-columns:78px 1fr}.sidebar{width:78px;padding-inline:12px}.sidebar .brand{justify-content:center;font-size:0;padding-inline:0}.side-nav p,.side-nav a{font-size:0}.side-nav a{justify-content:center;padding:0}.nav-icon{font-size:18px}.sidebar-card,.admin-profile>span:last-child{display:none}.admin-profile{justify-content:center}.workspace{grid-column:2}.table-head,.customer-row{grid-template-columns:minmax(150px,1fr) minmax(140px,1fr) 70px 85px 55px}.table-head span:nth-child(4),.customer-row>span:nth-child(4){display:none}.editor-layout{grid-template-columns:1fr}.editor-side{order:-1}.sticky-card{position:static;display:grid;grid-template-columns:200px 1fr;gap:12px}.sticky-card>.eyebrow,.sticky-card>.mini-card{grid-row:1/6}.publish-note{align-self:end}}
@media(max-width:720px){.installer-card,.login-card{padding:30px 20px}.install-grid,.form-grid{grid-template-columns:1fr}.install-grid label.full,.form-grid label.full{grid-column:auto}.admin-shell{display:block}.sidebar{position:fixed;inset:auto 0 0;width:auto;height:64px;padding:7px;z-index:20}.sidebar .brand,.sidebar-card,.admin-profile,.side-nav p,.side-nav a:nth-of-type(n+5){display:none}.side-nav{height:100%;display:grid;grid-template-columns:repeat(4,1fr)}.side-nav a{display:flex;min-height:48px}.workspace{padding-bottom:64px}.topbar{height:64px;padding:0 15px}.search{width:auto}.primary-button{width:42px;padding:0;font-size:0;justify-content:center}.content{padding:28px 15px}.welcome-row h1,.editor-head h1{font-size:28px}.live-pill{display:none}.stats-grid{grid-template-columns:1fr 1fr}.stat-card{min-height:125px}.stat-card:nth-child(3){grid-column:1/-1}.table-head{display:none}.customer-row{grid-template-columns:1fr auto;padding:11px 13px}.customer-row>.slug-link,.customer-row>span{display:none}.row-actions{display:flex}.editor-head{align-items:start}.editor-head>a{white-space:nowrap}.upload-grid{grid-template-columns:1fr}.button-editor{grid-template-columns:18px 1fr 30px}.button-editor input{grid-column:2}.button-editor select{grid-column:2}.remove-button{grid-column:3;grid-row:1}.sticky-card{display:block}.qr-admin-card{grid-template-columns:1fr;padding:20px}.qr-admin-card #admin-qr{max-width:300px;margin:auto}.public-card-page{padding:0}.ambient{display:none}.vcard{max-width:none;border:0;border-radius:0;box-shadow:none;min-height:100vh}.vcard-hero{height:200px}.identity{padding-inline:22px}.card-actions,.card-buttons{padding-inline:16px}.qr-box{margin-inline:16px}}

/* icon library, memberships and customer workspace */
.password-input-wrap{position:relative;display:flex;align-items:center}.password-input-wrap input{width:100%;padding-right:65px!important}.password-input-wrap button,.login-card form .password-input-wrap button{position:absolute;right:7px;width:auto;min-height:28px;height:28px;padding:0 9px;border:0;border-radius:7px;background:#eee4e8;color:#633e52;display:block;font-size:8px;font-weight:800;cursor:pointer}.login-card form .password-input-wrap button:hover{background:#e3d3da;color:#543144}
.button-editor{grid-template-columns:22px 150px 1fr 1.5fr 30px;transition:opacity .16s,transform .16s,box-shadow .16s}.button-editor.dragging{opacity:.46;transform:scale(.992);filter:saturate(.65)}.button-editor.sort-pulse{animation:sortPulse .25s ease}.drag{display:grid;place-items:center;min-height:38px;border-radius:8px;cursor:grab;touch-action:none;user-select:none}.drag:hover,.drag:focus{background:#eee1e7;color:#63394f;outline:none}.drag:active{cursor:grabbing}@keyframes sortPulse{50%{transform:translateX(5px);background:#f4e8ee}}

/* marketing homepage */
.marketing-page{background:#fbf8f3}.marketing-nav{height:82px;max-width:1220px;margin:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.marketing-brand{display:flex;align-items:center;gap:9px}.marketing-brand strong{font:700 19px Georgia,serif}.marketing-brand b{color:var(--coral)}.marketing-nav nav{display:flex;gap:28px;font-size:11px;font-weight:600;color:#6d6268}.marketing-nav>div{display:flex;align-items:center;gap:10px}.nav-login{font-size:10px;font-weight:700}.nav-cta,.hero-ctas>a,.price-card>a,.marketing-cta a{padding:13px 17px;border-radius:11px;background:var(--plum);color:#fff;font-size:10px;font-weight:800}.marketing-hero{min-height:660px;max-width:1220px;margin:auto;padding:65px 45px 80px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:60px}.hero-kicker{display:flex;align-items:center;gap:7px;color:#94516d;font-size:9px;font-weight:800;letter-spacing:.13em}.hero-kicker i{width:7px;height:7px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 4px #f9ded7}.hero-copy h1{max-width:650px;margin:20px 0;font:500 clamp(49px,6vw,76px)/.97 Georgia,serif;letter-spacing:-3.6px}.hero-copy h1 em{color:#9d506c;font-weight:400}.hero-copy>p{max-width:540px;color:#70656c;font-size:15px;line-height:1.7}.hero-ctas{display:flex;gap:10px;margin-top:29px}.hero-ctas>a{padding:16px 20px}.hero-ctas .ghost,.marketing-cta .ghost{border:1px solid #dacfd4;background:transparent;color:#5c3a4c}.hero-trust{display:flex;gap:18px;margin-top:25px;color:#81767d;font-size:9px}.hero-phone-wrap{position:relative;min-height:520px;display:grid;place-items:center}.hero-phone{position:relative;width:272px;min-height:510px;padding-bottom:18px;border:8px solid #251c22;border-radius:42px;background:#fff;overflow:hidden;box-shadow:0 40px 75px #38212f3b;z-index:2;text-align:center}.demo-cover{height:133px;padding:23px;background:linear-gradient(135deg,#2d1727,#723d59 60%,#e87961);color:#fff;text-align:left;font:700 10px Georgia,serif;letter-spacing:.15em}.demo-avatar{width:72px;height:72px;margin:-38px auto 10px;border:4px solid white;border-radius:23px;background:#e7ccd9;color:#63354d;display:grid;place-items:center;font:700 18px Georgia,serif}.hero-phone>small{font-size:6px;color:#b45c75;letter-spacing:.12em}.hero-phone h2{margin:6px 0 2px;font:600 20px Georgia,serif}.hero-phone>p{margin:0;color:#82767d;font-size:8px}.demo-actions{display:flex;justify-content:center;gap:7px;margin:14px}.demo-actions i{width:33px;height:33px;border-radius:10px;background:#f0e3e9;color:#6d3e56;display:grid;place-items:center}.demo-actions svg{width:14px}.demo-link{margin:0 14px;padding:10px;border:1px solid #eae1db;border-radius:12px;display:flex;align-items:center;gap:8px;text-align:left;color:#624056}.demo-link>svg{width:17px}.demo-link span{flex:1;display:flex;flex-direction:column}.demo-link b{font-size:8px}.demo-link small{font-size:7px;color:#968a91}.hero-phone>button{width:calc(100% - 28px);height:38px;margin-top:13px;border:0;border-radius:10px;background:var(--plum);color:#fff;font-size:8px;font-weight:700}.hero-orbit{position:absolute;border:1px solid #d9bdca;border-radius:50%}.orbit-one{width:440px;height:440px}.orbit-two{width:350px;height:350px}.floating-note{position:absolute;padding:12px 14px;border:1px solid #dfd4ce;border-radius:14px;background:#fffdfbd9;backdrop-filter:blur(10px);box-shadow:0 16px 35px #4d31411c;display:flex;align-items:center;gap:9px;z-index:3}.floating-note svg{width:20px;color:#7c4661}.floating-note span{display:flex;flex-direction:column}.floating-note b{font-size:10px}.floating-note small,.floating-note span{font-size:7px;color:#8b7e85}.note-one{left:0;top:115px}.note-two{right:2px;bottom:82px}.note-two>b{font:700 19px Georgia,serif;color:#a15068}.logo-strip{min-height:82px;padding:20px;display:flex;align-items:center;justify-content:center;gap:65px;border-block:1px solid #e8e0d9;background:#f5f0e9;color:#968a91;font:600 12px Georgia,serif}.marketing-section{max-width:1160px;margin:auto;padding:110px 35px}.section-intro{max-width:640px;margin:0 auto 48px;text-align:center}.section-intro h2,.feature-copy h2{margin:10px 0 15px;font:500 clamp(35px,4vw,52px)/1.03 Georgia,serif;letter-spacing:-1.8px}.section-intro>p:last-child,.feature-copy>p{color:#776c73;font-size:13px;line-height:1.7}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.step-grid article{position:relative;min-height:240px;padding:28px;border:1px solid var(--line);border-radius:22px;background:#fff}.step-grid article>span{position:absolute;right:20px;top:17px;color:#d9ccd3;font:600 31px Georgia,serif}.step-grid article>svg{width:38px;height:38px;padding:9px;border-radius:11px;background:#eee1e7;color:#713f59}.step-grid h3{margin:36px 0 10px;font:600 20px Georgia,serif}.step-grid p{color:#83777e;font-size:11px;line-height:1.6}.features{max-width:none;padding-inline:max(35px,calc((100vw - 1090px)/2));background:#281c25;color:white;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.feature-copy>p{color:#b8aeb4}.feature-copy ul{padding:0;margin:28px 0 0;list-style:none;display:grid;gap:17px}.feature-copy li{display:flex;align-items:center;gap:12px}.feature-copy li>svg{width:35px;height:35px;padding:8px;border-radius:10px;background:#49313f;color:#ed987f}.feature-copy li span{display:flex;flex-direction:column;color:#aa9fa6;font-size:10px}.feature-copy li b{margin-bottom:4px;color:#fff;font-size:12px}.feature-board{display:grid;grid-template-columns:1fr 1fr;gap:11px}.board-card{min-height:150px;padding:20px;border:1px solid #ffffff1a;border-radius:18px;background:#382933}.board-card>span{color:#aa9ca5;font-size:9px}.board-card>strong{display:block;margin-top:12px;font:500 29px Georgia,serif}.board-card>small{color:#d9a095;font-size:8px}.board-card.accent{background:#74405b}.board-card.wide{grid-column:1/-1;min-height:110px;position:relative}.board-card.wide strong{font-size:22px}.board-card.wide em{position:absolute;right:20px;top:20px;padding:6px 8px;border-radius:99px;background:#386b4a;color:#cce8d3;font-size:7px;font-style:normal}.board-bars{height:40px;margin-top:20px;display:flex;gap:5px;align-items:end}.board-bars i{flex:1;border-radius:5px 5px 2px 2px;background:#a46783}.board-bars i:nth-child(1){height:35%}.board-bars i:nth-child(2){height:52%}.board-bars i:nth-child(3){height:42%}.board-bars i:nth-child(4){height:76%}.board-bars i:nth-child(5){height:65%}.board-bars i:nth-child(6){height:96%;background:#ef765c}.price-section{max-width:920px}.price-card{padding:35px;border:1px solid #dfd3d9;border-radius:26px;background:linear-gradient(135deg,#fff,#f6eaef);box-shadow:0 25px 60px #4e30401a;display:grid;grid-template-columns:1fr 1fr auto;gap:35px;align-items:center}.price-card>div>span{font-size:10px;font-weight:800;color:#95516d}.price-card h3{margin:10px 0;font:600 39px Georgia,serif}.price-card h3 small{font-size:13px}.price-card p{color:#81747b;font-size:10px}.price-card ul{padding:0;margin:0;list-style:none;display:grid;gap:9px;font-size:10px}.faq{max-width:820px}.faq details{border-bottom:1px solid var(--line);padding:18px 3px}.faq summary{cursor:pointer;font:600 16px Georgia,serif}.faq details p{color:#786d74;font-size:11px;line-height:1.6}.marketing-cta{padding:90px 25px;background:linear-gradient(135deg,#392330,#713d58);color:white;text-align:center}.marketing-cta>.brand-mark{margin:auto}.marketing-cta h2{margin:14px 0;font:500 clamp(38px,5vw,60px) Georgia,serif}.marketing-cta>p{color:#d5c5ce;font-size:12px}.marketing-cta>div{display:flex;justify-content:center;gap:9px;margin-top:28px}.marketing-cta .ghost{color:#fff;border-color:#ffffff4d}.marketing-cta>small{display:block;margin-top:22px;color:#9f8c97;font-size:8px}.marketing-footer{max-width:1160px;min-height:110px;margin:auto;padding:25px;display:flex;align-items:center;justify-content:space-between}.marketing-footer p{color:#93878e;font-size:9px}.marketing-footer>div{display:flex;gap:17px;font-size:9px;font-weight:700}

@media(max-width:1020px){.subscription-row{grid-template-columns:1fr 120px}.subscription-row form{grid-column:1/-1}.plan-admin-grid{grid-template-columns:1fr 1fr}.customer-workspace{padding-inline:20px}.marketing-hero{grid-template-columns:1fr;padding-top:40px;text-align:center}.hero-copy>p{margin-inline:auto}.hero-kicker,.hero-ctas,.hero-trust{justify-content:center}.hero-phone-wrap{margin-top:10px}.features{grid-template-columns:1fr;gap:50px}.marketing-nav nav{display:none}.price-card{grid-template-columns:1fr 1fr}.price-card>a{grid-column:1/-1;text-align:center}.logo-strip{gap:25px;flex-wrap:wrap}}
@media(max-width:720px){.button-editor{grid-template-columns:18px 1fr 30px}.button-editor .icon-picker{grid-column:2}.button-editor input{grid-column:2}.icon-picker-menu{width:min(310px,calc(100vw - 82px))}.icon-grid{grid-template-columns:repeat(3,1fr)}.table-head.extended{display:none}.customer-row.extended{grid-template-columns:1fr auto}.customer-row.extended>span{display:none}.filter-bar{display:grid;grid-template-columns:1fr 120px}.filter-bar button{grid-column:1/-1;height:38px}.subscription-row{grid-template-columns:1fr}.subscription-row form{grid-template-columns:1fr}.subscription-row form button{height:38px}.plan-admin-grid{grid-template-columns:1fr}.customer-topbar{padding-inline:14px}.customer-topbar .brand span:last-child{display:block;font-size:15px}.customer-topbar>div a:first-child{display:none}.customer-workspace{padding:18px 14px 40px}.subscription-banner{align-items:flex-start}.subscription-banner>span{display:flex;flex-direction:column;align-items:flex-start}.marketing-nav{height:70px;padding-inline:16px}.marketing-nav .nav-login,.marketing-nav nav{display:none}.nav-cta{padding:11px}.marketing-hero{padding:55px 20px 70px}.hero-copy h1{font-size:48px;letter-spacing:-2.3px}.hero-copy>p{font-size:13px}.hero-ctas{flex-direction:column}.hero-trust{flex-wrap:wrap}.hero-phone-wrap{transform:scale(.88);margin:-20px -30px}.logo-strip{gap:18px}.marketing-section{padding:78px 20px}.step-grid{grid-template-columns:1fr}.features{padding-inline:22px}.feature-board{grid-template-columns:1fr}.board-card.wide{grid-column:auto}.price-card{grid-template-columns:1fr;padding:25px}.price-card>a{grid-column:auto}.marketing-cta{padding:75px 20px}.marketing-cta>div{flex-direction:column}.marketing-footer{flex-direction:column;gap:20px;text-align:center}}
