:root{--cream:#f7f2e9;--paper:#fffdf9;--ink:#34231d;--muted:#8a786f;--orange:#df7438;--sage:#66745e;--line:#e6d8c7;--shadow:0 24px 70px rgba(68,43,31,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif}.topbar{height:76px;padding:0 clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(247,242,233,.92);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--ink);font-weight:800;font-size:20px}.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--orange);filter:saturate(.9)}nav{display:flex;gap:8px}.nav-link,.back,.panel-title button{border:0;background:transparent;color:var(--ink);font:inherit;font-weight:600;cursor:pointer;padding:11px 15px;border-radius:99px}.nav-primary{background:var(--ink);color:white}.view{display:none}.view.active{display:block}.hero{min-height:690px;padding:70px clamp(22px,7vw,110px);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:7vw;overflow:hidden;background:radial-gradient(circle at 88% 28%,#ecd7bd 0,transparent 33%),var(--cream)}.hero-copy{max-width:650px}.eyebrow{display:inline-block;color:var(--sage);font-size:13px;font-weight:800;letter-spacing:.18em;margin-bottom:18px}.hero h1,.app-shell>h1,.admin-head h1{font-family:"Playfair Display",serif;font-size:clamp(46px,6vw,82px);line-height:1.02;letter-spacing:-.035em;margin:0 0 24px}.hero h1 em{color:var(--orange);font-style:italic}.hero-copy>p{font-size:19px;line-height:1.7;color:var(--muted);max-width:600px}.hero-actions{display:flex;gap:12px;margin:34px 0 26px}.button{border:1px solid transparent;border-radius:99px;padding:15px 23px;font:inherit;font-weight:700;cursor:pointer;transition:.2s transform,.2s box-shadow}.button:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(52,35,29,.15)}.button-dark{background:var(--ink);color:#fff}.button-light{background:transparent;border-color:var(--line);color:var(--ink)}.button-orange{background:var(--orange);color:white}.trust-row{display:flex;gap:22px;flex-wrap:wrap;font-size:13px;color:var(--sage);font-weight:700}.coffee-card{background:var(--paper);border:1px solid var(--line);border-radius:30px;padding:27px;box-shadow:var(--shadow);position:relative}.hero-card{max-width:490px;transform:rotate(1.5deg)}.cafe-logo-wrap{background:#fff;border:1px solid var(--line);border-radius:18px;height:86px;display:flex;align-items:center;justify-content:center;margin:-6px 0 24px;overflow:hidden}.cafe-logo-wrap img{width:86%;height:76%;object-fit:contain}.cafe-logo-wrap.large{height:120px;max-width:440px;margin:0 auto 30px}.card-heading,.progress-text,.panel-title{display:flex;justify-content:space-between;align-items:center;gap:15px}.card-heading small,.reward small,.metrics small{color:var(--muted);font-size:10px;letter-spacing:.12em;font-weight:800}.card-heading h2{margin:4px 0;font-family:"Playfair Display",serif}.level,.status{padding:7px 10px;border-radius:99px;background:#e7eee4;color:var(--sage);font-weight:700;font-size:11px}.progress-text{margin:24px 0 14px}.progress-text span{color:var(--orange);font-size:13px;font-weight:700}.stamps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.stamps span{aspect-ratio:1;display:grid;place-items:center;border:1px dashed #ccbda9;border-radius:50%;color:#b09f91;font-weight:800}.stamps .filled{background:var(--orange);color:#fff;border:0;box-shadow:inset 0 -4px 0 rgba(0,0,0,.08)}.reward{display:flex;gap:14px;align-items:center;background:#f5e9d8;padding:15px;border-radius:17px;margin-top:20px}.reward>span{font-size:24px}.reward div{display:flex;flex-direction:column;gap:4px}.how{padding:90px clamp(22px,7vw,110px);background:var(--paper);text-align:center}.how h2{font:700 clamp(34px,4vw,54px)/1.1 "Playfair Display",serif;margin:0 auto 45px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1150px;margin:auto;text-align:left}.steps article{border:1px solid var(--line);border-radius:22px;padding:27px;position:relative}.steps b{position:absolute;right:22px;color:#d7cabd}.steps article>span{font-size:26px;color:var(--orange)}.steps h3{font:700 24px "Playfair Display",serif;margin:20px 0 8px}.steps p,.muted{color:var(--muted);line-height:1.6}.app-view{min-height:calc(100vh - 76px);padding:25px clamp(18px,5vw,70px) 70px;background:radial-gradient(circle at 30% 10%,#fff 0,transparent 35%)}.back{padding-left:0;margin-bottom:20px}.app-shell{margin:auto;text-align:center}.narrow{max-width:650px}.app-shell>h1{font-size:clamp(38px,6vw,62px)}.full{margin-top:28px;text-align:left}.big{gap:14px;margin:25px 0}.progress{height:8px;border-radius:20px;background:#eee2d4;overflow:hidden}.progress i{display:block;height:100%;background:var(--orange);border-radius:20px}.full-button{width:100%;margin-top:17px}.qr-modal{position:fixed;inset:0;background:rgba(52,35,29,.83);z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:center;color:white;gap:12px}.qr-modal[hidden]{display:none}.qr-modal button{position:absolute;right:25px;top:18px;background:none;border:0;color:white;font-size:40px;cursor:pointer}.demo-qr{width:230px;height:230px;background:repeating-conic-gradient(#222 0 25%,white 0 50%) 0/22px 22px;border:16px solid white}.qr-modal small{opacity:.7}.panel{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:25px;text-align:left;box-shadow:0 12px 40px rgba(68,43,31,.07)}label{display:block;font-weight:700;margin-bottom:9px}input{width:100%;border:1px solid var(--line);border-radius:14px;background:white;padding:16px;font:inherit;color:var(--ink);outline:none}input:focus{border-color:var(--orange);box-shadow:0 0 0 3px #df743826}.client-result{margin-top:22px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px}.client-result[hidden]{display:none}.client-result>div{display:flex;gap:12px;align-items:center}.client-result small,.activity small,.program small{display:block;color:var(--muted);margin-top:4px}.avatar{width:42px;height:42px;display:grid;place-items:center;background:#f0dfc8;border-radius:50%;font-weight:800}.success{background:#e7eee4;color:#53624d;border-radius:12px;padding:12px;font-weight:700}.demo-note{font-size:12px;color:var(--muted)}.admin-shell{max-width:1200px;margin:auto}.admin-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.admin-head h1{font-size:clamp(38px,5vw,58px);margin:0}.admin-head .eyebrow{margin-bottom:10px}.admin-head p{margin:8px 0}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:15px}.metrics article{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:22px}.metrics strong{font:700 36px "Playfair Display",serif;display:block;margin:12px 0 8px}.metrics span{font-size:12px;color:var(--sage)}.admin-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:15px}.panel-title h2{font:700 22px "Playfair Display",serif;margin:0}.panel-title p{font-size:12px;color:var(--muted);margin:4px 0}.activity{padding:0;margin:22px 0 0;list-style:none}.activity li{display:flex;gap:14px;padding:15px 0;border-top:1px solid var(--line)}.activity li>span,.program>span{width:42px;height:42px;display:grid;place-items:center;background:#f5e9d8;border-radius:12px}.program{display:flex;gap:14px;align-items:center;border-top:1px solid var(--line);padding:25px 0}footer{min-height:90px;padding:30px clamp(22px,7vw,110px);display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:13px;border-top:1px solid var(--line)}
@media(max-width:850px){.topbar{height:auto;min-height:68px}.topbar nav .nav-link:not(.nav-primary){display:none}.hero{grid-template-columns:1fr;padding-top:50px}.hero-card{margin:auto;width:min(100%,490px)}.steps,.metrics,.admin-grid{grid-template-columns:1fr 1fr}.admin-head{align-items:start}.admin-head .button{display:none}.app-view{min-height:100vh}.hero h1{font-size:54px}}
@media(max-width:560px){.hero{padding:42px 18px 60px}.hero h1{font-size:45px}.hero-copy>p{font-size:16px}.hero-actions{flex-direction:column}.trust-row{gap:10px;flex-direction:column}.coffee-card{padding:20px;border-radius:24px}.steps,.metrics,.admin-grid{grid-template-columns:1fr}.how{padding:70px 18px}.client-result{align-items:stretch;flex-direction:column}.client-result .button{width:100%}.admin-head h1{font-size:40px}.app-view{padding-inline:14px}footer{flex-direction:column;gap:8px;text-align:center}}
.auth-card{max-width:560px;margin:25px auto;background:var(--paper);border:1px solid var(--line);border-radius:28px;padding:clamp(24px,5vw,46px);box-shadow:var(--shadow);text-align:left}.auth-card[hidden],#admin-dashboard[hidden]{display:none}.auth-card h1{font:700 clamp(36px,5vw,54px)/1.08 "Playfair Display",serif;margin:0 0 15px}.auth-card form{margin-top:27px}.auth-card label{margin-top:16px}.auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:23px}.form-message{border-radius:12px;padding:12px 14px;margin:16px 0 0;font-weight:600;font-size:14px;background:#f5e9d8;color:var(--ink)}.form-message.error{background:#fbe4df;color:#8f3527}.form-message.success{background:#e7eee4;color:#52624d}.spinner{display:block;width:32px;height:32px;border:3px solid var(--line);border-top-color:var(--orange);border-radius:50%;margin:auto;animation:spin .8s linear infinite}#admin-loading{text-align:center}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:560px){.auth-actions{grid-template-columns:1fr}}
.inline-form{border-top:1px solid var(--line);margin-top:22px;padding-top:22px}.inline-form[hidden],.share-card[hidden]{display:none}.inline-form h2{font:700 25px "Playfair Display",serif;margin:0 0 8px}.share-card{margin-top:20px;padding:18px;border-radius:16px;background:#f5e9d8}.share-card strong{display:block;margin-bottom:10px}.share-card input{font-size:12px}.qr-box{width:264px;height:264px;padding:12px;background:white;border-radius:18px;display:grid;place-items:center}.qr-box img,.qr-box canvas{max-width:240px!important;max-height:240px!important}.stamps.big{grid-template-columns:repeat(5,1fr)}
@media(max-width:560px){.stamps.big{grid-template-columns:repeat(5,1fr);gap:8px}.qr-box{width:232px;height:232px}.qr-box img,.qr-box canvas{max-width:208px!important;max-height:208px!important}}
.client-actions{display:flex!important;gap:9px!important;align-items:stretch!important;flex-wrap:wrap}.client-actions .button{padding-inline:18px}.button-reward{background:var(--sage);color:#fff}.button-reward[hidden]{display:none}.button-whatsapp{display:block;text-align:center;text-decoration:none;background:#248a52;color:#fff}.button:disabled{opacity:.58;cursor:not-allowed;transform:none;box-shadow:none}
@media(max-width:560px){.client-actions{width:100%;flex-direction:column}.client-actions .button{width:100%}}
.scanner-panel{margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#f8efe2}.scanner-panel[hidden]{display:none}.scanner-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:14px}.scanner-head span{font-size:12px;color:var(--muted)}#staff-qr-reader{width:100%;min-height:280px;border:0!important;border-radius:15px;overflow:hidden;background:#241a16;display:grid;place-items:center}#staff-qr-reader video,#staff-qr-reader canvas{width:100%!important;border-radius:15px}#staff-qr-reader:empty:before{content:"Preparando cámara…";color:#fff;font-size:14px}
@media(max-width:560px){.scanner-head{align-items:flex-start;flex-direction:column}#staff-qr-reader{min-height:240px}}
.staff-login-card{max-width:520px;margin:28px auto 0;padding:clamp(25px,5vw,42px);text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow)}.staff-login-card[hidden],#staff-tools[hidden]{display:none}.staff-login-card h2{font:700 34px/1.1 "Playfair Display",serif;margin:12px 0}.staff-login-card form{margin-top:23px}.staff-lock{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#f5e9d8;font-size:21px}.pin-input{font-size:22px;font-weight:800;letter-spacing:.32em;text-align:center}.staff-session-row{display:flex;align-items:center;gap:12px;margin-bottom:18px}.staff-session-row .form-message{flex:1;margin:0}.staff-logout{padding:11px 16px;white-space:nowrap}.staff-access-panel{grid-column:1/-1}.staff-access-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;border-top:1px solid var(--line);margin-top:22px;padding-top:24px}.staff-help{font-size:13px;margin:4px 0 13px}.pin-action-row{display:grid;grid-template-columns:minmax(150px,1fr) auto;gap:10px}.pin-action-row .button{white-space:nowrap}.staff-link-card{padding-left:28px;border-left:1px solid var(--line)}.staff-link-card[hidden]{display:none}.staff-link-card input{font-size:12px}.status.ready{background:#e7eee4;color:#52624d}
@media(max-width:700px){.staff-access-grid{grid-template-columns:1fr}.staff-link-card{padding:24px 0 0;border-left:0;border-top:1px solid var(--line)}}
@media(max-width:560px){.staff-session-row{align-items:stretch;flex-direction:column}.staff-logout{width:100%}.pin-action-row{grid-template-columns:1fr}.pin-action-row .button{width:100%}.staff-login-card{padding:24px}.staff-access-panel{padding:21px}}
.platform-nav[hidden],#platform-dashboard[hidden],#platform-denied[hidden],#platform-loading[hidden]{display:none!important}.admin-head-actions{display:flex;gap:10px;align-items:center}.platform-bg{background:radial-gradient(circle at 85% 0,#efd9bf 0,transparent 31%),#f7f2e9}.platform-shell{max-width:1380px;margin:auto}.platform-hero{display:flex;align-items:end;justify-content:space-between;gap:25px;margin:8px 0 30px}.platform-hero h1{font:700 clamp(46px,6vw,76px)/1.02 "Playfair Display",serif;letter-spacing:-.035em;margin:0 0 10px}.platform-hero .eyebrow{margin-bottom:12px}.platform-hero p{margin:0}.platform-grid{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(500px,1.55fr);gap:16px;align-items:start}.platform-create-panel h2{font:700 30px/1.1 "Playfair Display",serif;margin:0 0 10px}.platform-create-panel form{margin-top:24px}.platform-create-panel label{margin-top:15px}.platform-invite-result{border:1px solid #e6cfad}.platform-cafe-list{display:grid;gap:12px;margin-top:20px}.platform-cafe-card{border:1px solid var(--line);border-radius:18px;padding:18px;background:#fff}.platform-cafe-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.platform-cafe-head h3{font:700 23px "Playfair Display",serif;margin:0}.platform-cafe-head p{font-size:12px;color:var(--muted);margin:5px 0 0}.platform-cafe-status{display:inline-flex;padding:7px 10px;border-radius:99px;background:#e7eee4;color:#52624d;font-size:11px;font-weight:800;white-space:nowrap}.platform-cafe-status.suspended{background:#fbe4df;color:#8f3527}.platform-cafe-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.platform-cafe-stats span{padding:10px;border-radius:12px;background:#f8f3ec;color:var(--muted);font-size:11px}.platform-cafe-stats strong{display:block;color:var(--ink);font-size:18px;margin-bottom:2px}.platform-owner-line{font-size:12px;color:var(--muted);padding-top:13px;border-top:1px solid var(--line)}.platform-invite-note{margin-top:12px;padding:12px;border-radius:12px;background:#f5e9d8;font-size:12px}.platform-invite-note strong{display:block;margin-bottom:4px}.platform-cafe-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.platform-cafe-actions .button{padding:10px 14px;font-size:12px}.button-danger{background:#fbe4df;color:#8f3527;border-color:#f2c8be}.platform-empty{padding:40px 20px;text-align:center;color:var(--muted)}
@media(max-width:1000px){.platform-grid{grid-template-columns:1fr}.platform-create-panel{order:1}.platform-list-panel{order:2}}
@media(max-width:850px){.admin-head-actions{display:none}.topbar nav .platform-nav:not([hidden]){display:block}.platform-hero{align-items:flex-start;flex-direction:column}.platform-hero .button{display:none}}
@media(max-width:560px){.platform-metrics{grid-template-columns:1fr 1fr}.platform-cafe-head{flex-direction:column}.platform-cafe-stats{grid-template-columns:1fr 1fr 1fr}.platform-cafe-actions{flex-direction:column}.platform-cafe-actions .button{width:100%}.platform-create-panel,.platform-list-panel{padding:20px}}
.cafe-logo-fallback{font:700 clamp(22px,5vw,34px)/1.1 "Playfair Display",serif;color:var(--ink);padding:18px;text-align:center}.cafe-logo-fallback[hidden]{display:none}.branding-panel{grid-column:1/-1}.branding-panel[hidden]{display:none}.branding-grid{display:grid;grid-template-columns:minmax(270px,.82fr) minmax(360px,1.18fr);gap:32px;border-top:1px solid var(--line);margin-top:22px;padding-top:27px}.branding-preview-wrap>.eyebrow{margin:0 0 12px}.branding-preview{--preview-primary:#df7438;--preview-secondary:#66745e;background:linear-gradient(145deg,#fff 30%,color-mix(in srgb,var(--preview-primary) 10%,#fff));border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:0 15px 36px rgba(68,43,31,.09)}.branding-preview-logo{min-height:78px;border:1px solid var(--line);background:#fff;border-radius:15px;display:grid;place-items:center;margin-bottom:22px;padding:10px;text-align:center}.branding-preview-logo img{display:block;max-width:88%;width:auto;height:auto;max-height:58px;object-fit:contain}.branding-preview-logo img[hidden],.branding-preview-logo strong[hidden]{display:none}.branding-preview-logo strong{font:700 24px/1.1 "Playfair Display",serif;color:var(--ink)}.branding-preview>small,.branding-preview-reward small{display:block;color:var(--preview-secondary);font-size:9px;letter-spacing:.11em;font-weight:800}.branding-preview h3{font:700 29px/1.1 "Playfair Display",serif;margin:5px 0 20px}.branding-preview-stamps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.branding-preview-stamps span{aspect-ratio:1;display:grid;place-items:center;border:1px dashed #ccbda9;border-radius:50%;font-weight:800;color:#b09f91}.branding-preview-stamps span:nth-child(-n+2){background:var(--preview-primary);border:0;color:#fff}.branding-preview-reward{display:flex;align-items:center;gap:11px;margin-top:18px;padding:14px;border-radius:15px;background:color-mix(in srgb,var(--preview-primary) 14%,#fff)}.branding-preview-reward>span{font-size:22px}.branding-preview-reward div{display:grid;gap:3px}.branding-preview-reward strong{font-size:13px}.branding-panel form label{margin-top:15px}.branding-panel form label:first-child{margin-top:0}.file-input{padding:11px;font-size:13px}.file-input::file-selector-button{border:0;border-radius:99px;background:var(--ink);color:#fff;padding:10px 14px;margin-right:12px;font:inherit;font-weight:700;cursor:pointer}.branding-file-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:7px;color:var(--muted)}.text-button{border:0;background:transparent;color:#8f3527;font:inherit;font-size:12px;font-weight:800;cursor:pointer;padding:5px}.branding-colors{display:grid;grid-template-columns:1fr 1fr;gap:13px}.branding-colors label{font-size:13px}.branding-colors input[type=color]{height:50px;padding:5px;cursor:pointer;margin-top:8px}.branding-colors input[type=color]::-webkit-color-swatch-wrapper{padding:0}.branding-colors input[type=color]::-webkit-color-swatch{border:0;border-radius:9px}.branding-colors input[type=color]::-moz-color-swatch{border:0;border-radius:9px}
@media(max-width:850px){.branding-grid{grid-template-columns:1fr}.branding-preview-wrap{max-width:480px;width:100%;margin:auto}.branding-panel form{max-width:600px;width:100%;margin:auto}}
@media(max-width:560px){.branding-panel{padding:21px}.branding-panel>.panel-title{align-items:flex-start}.branding-grid{gap:24px}.branding-colors{grid-template-columns:1fr 1fr}.branding-file-row{align-items:flex-start;flex-direction:column;gap:3px}}
.cafe-plan-panel{margin-bottom:15px;background:linear-gradient(135deg,#fff 35%,#f7ecdb)}.cafe-plan-panel[hidden]{display:none}.plan-status{display:inline-flex;padding:8px 11px;border-radius:99px;font-size:11px;font-weight:800;letter-spacing:.04em;background:#e7eee4;color:#52624d}.plan-status.trial{background:#f5e9d8;color:#8a5b29}.plan-status.active{background:#e7eee4;color:#52624d}.plan-status.past-due,.plan-status.suspended{background:#fbe4df;color:#8f3527}.cafe-plan-grid{display:grid;grid-template-columns:minmax(210px,.65fr) minmax(320px,1.35fr);gap:30px;align-items:center;border-top:1px solid var(--line);margin-top:20px;padding-top:22px}.cafe-plan-name small{display:block;color:var(--muted);font-size:10px;letter-spacing:.12em;font-weight:800}.cafe-plan-name>strong{display:block;font:700 30px "Playfair Display",serif;margin:5px 0}.cafe-plan-name p{color:var(--muted);font-size:13px;margin:0}.cafe-plan-usage-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:10px}.cafe-plan-usage-head strong{font-size:14px}.cafe-plan-usage-head span{color:var(--orange);font-size:13px;font-weight:800}.plan-progress{height:10px;border-radius:99px;background:#eadfce;overflow:hidden}.plan-progress i{display:block;width:0;height:100%;border-radius:inherit;background:var(--orange);transition:width .35s ease}.cafe-plan-usage small{display:block;color:var(--muted);margin-top:9px}.platform-plan-box{margin-top:14px;padding:15px;border:1px solid var(--line);border-radius:15px;background:#fbf7f1}.platform-plan-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.platform-plan-head strong{font-size:13px}.platform-plan-head small{color:var(--muted)}.platform-plan-controls{display:grid;grid-template-columns:1.1fr 1fr .8fr;gap:9px}.platform-plan-controls label{font-size:10px;letter-spacing:.08em;color:var(--muted);margin:0}.platform-plan-controls select,.platform-plan-controls input{width:100%;min-height:43px;margin-top:6px;border:1px solid var(--line);border-radius:11px;background:#fff;padding:9px 10px;font:inherit;font-size:12px;color:var(--ink);outline:none}.platform-plan-controls select:focus,.platform-plan-controls input:focus{border-color:var(--orange);box-shadow:0 0 0 3px #df743826}.platform-plan-meta{font-size:11px;color:var(--muted);margin:11px 0 0}.platform-plan-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}.platform-plan-actions .button{padding:10px 13px;font-size:11px}.platform-plan-message{margin:10px 0 0;font-size:11px;padding:9px 10px}.platform-plan-pending{margin-top:13px;padding:11px;border-radius:12px;background:#f5e9d8;color:var(--muted);font-size:11px}
@media(max-width:700px){.cafe-plan-grid{grid-template-columns:1fr;gap:20px}.platform-plan-controls{grid-template-columns:1fr 1fr}.platform-plan-controls label:first-child{grid-column:1/-1}}
@media(max-width:560px){.cafe-plan-panel{padding:21px}.cafe-plan-panel>.panel-title{align-items:flex-start}.platform-plan-controls{grid-template-columns:1fr}.platform-plan-controls label:first-child{grid-column:auto}.platform-plan-actions{flex-direction:column}.platform-plan-actions .button{width:100%}}
#cafe-plan-price{color:var(--ink);font-weight:700;margin-bottom:4px}.platform-plan-controls.with-price{grid-template-columns:1.05fr .85fr .7fr .85fr}.platform-payment-box{margin-top:11px;padding:15px;border:1px solid #e6cfad;border-radius:15px;background:#f5e9d8}.platform-payment-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.platform-payment-head strong{font-size:13px}.platform-payment-head small{display:block;color:var(--muted);margin-top:3px}.platform-payment-total{color:var(--sage);font-size:11px;font-weight:800;white-space:nowrap}.platform-payment-controls{display:grid;grid-template-columns:1fr .65fr 1fr;gap:9px}.platform-payment-controls label{font-size:10px;letter-spacing:.08em;color:var(--muted);margin:0}.platform-payment-controls input,.platform-payment-controls select{width:100%;min-height:43px;margin-top:6px;border:1px solid var(--line);border-radius:11px;background:#fff;padding:9px 10px;font:inherit;font-size:12px;color:var(--ink);outline:none}.platform-payment-controls input:focus,.platform-payment-controls select:focus{border-color:var(--orange);box-shadow:0 0 0 3px #df743826}.platform-payment-reference{grid-column:1/-1}.platform-payment-summary{margin:11px 0 0;font-size:11px;color:var(--muted);line-height:1.5}.platform-payment-box .button{padding:11px 14px;font-size:12px}.platform-payment-box .platform-plan-message{background:#fff}
@media(max-width:900px){.platform-plan-controls.with-price{grid-template-columns:1fr 1fr}.platform-payment-controls{grid-template-columns:1fr 1fr}.platform-payment-controls label:last-of-type{grid-column:1/-1}}
@media(max-width:560px){.platform-plan-controls.with-price,.platform-payment-controls{grid-template-columns:1fr}.platform-payment-controls label:last-of-type,.platform-payment-reference{grid-column:auto}.platform-payment-head{flex-direction:column}.platform-payment-box .button{width:100%}}

/* Bank transfer receipts */
.transfer-payment-panel{margin-bottom:15px}.transfer-payment-panel[hidden],.platform-billing-grid[hidden]{display:none}.bank-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px;border-radius:15px;background:#f5e9d8;margin:18px 0}.bank-details p{margin:0;color:var(--muted)}.bank-detail{padding:8px 10px;border-left:3px solid var(--orange)}.bank-detail small{display:block;color:var(--muted);font-size:10px;letter-spacing:.08em}.bank-detail strong{display:block;margin-top:3px}.payment-proof-form{display:grid;grid-template-columns:1fr .55fr;gap:12px}.payment-proof-form label{margin:0}.payment-proof-form label:nth-child(3),.payment-proof-file,.payment-proof-form .full-button,.payment-proof-form .form-message{grid-column:1/-1}.payment-proof-file input{padding:12px;background:#fff}.payment-proof-history{display:grid;gap:8px;margin-top:18px}.proof-history-item{display:flex;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid var(--line);border-radius:13px}.proof-history-item small{display:block;color:var(--muted);margin-top:3px}.proof-badge{align-self:flex-start;padding:6px 9px;border-radius:99px;font-size:10px;font-weight:800}.proof-badge.pending{background:#f5e9d8;color:#8a5b29}.proof-badge.approved{background:#e7eee4;color:#52624d}.proof-badge.rejected{background:#fbe4df;color:#8f3527}.platform-billing-grid{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(460px,1.15fr);gap:16px;margin-bottom:16px}.bank-settings-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.bank-settings-form label{margin:0}.bank-settings-wide{grid-column:1/-1}.bank-settings-form textarea{width:100%;resize:vertical}.platform-payment-proofs{display:grid;gap:10px;max-height:520px;overflow:auto}.platform-proof-card{border:1px solid var(--line);border-radius:15px;padding:14px;background:#fff}.platform-proof-head{display:flex;justify-content:space-between;gap:12px}.platform-proof-head small,.platform-proof-meta{color:var(--muted);font-size:11px}.platform-proof-head strong{display:block}.platform-proof-meta{margin:9px 0;line-height:1.5}.platform-proof-actions{display:flex;gap:8px;flex-wrap:wrap}.platform-proof-actions .button{padding:9px 12px;font-size:11px}.platform-proof-card.reviewed{opacity:.72}
@media(max-width:900px){.platform-billing-grid{grid-template-columns:1fr}}
@media(max-width:600px){.bank-details,.payment-proof-form,.bank-settings-form{grid-template-columns:1fr}.payment-proof-form label:nth-child(3),.payment-proof-file,.payment-proof-form .full-button,.payment-proof-form .form-message,.bank-settings-wide{grid-column:auto}.proof-history-item,.platform-proof-head{flex-direction:column}}

/* Public pricing */
.topbar .nav-link{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.pricing{padding:95px clamp(22px,7vw,110px);background:linear-gradient(180deg,#fffdf9 0,#f7f2e9 100%);scroll-margin-top:76px}.pricing-heading{max-width:760px;text-align:center;margin:0 auto 42px}.pricing-heading .eyebrow{margin-bottom:14px}.pricing-heading h2{font:700 clamp(38px,5vw,62px)/1.05 "Playfair Display",serif;letter-spacing:-.025em;margin:0}.pricing-heading p{color:var(--muted);font-size:17px;line-height:1.65;margin:20px auto 0}.founder-offer{max-width:1140px;margin:0 auto 28px;background:var(--ink);color:#fff;border-radius:28px;padding:26px 30px;display:grid;grid-template-columns:auto 1fr;gap:30px;align-items:center;box-shadow:0 20px 55px rgba(52,35,29,.16)}.founder-badge{align-self:stretch;display:grid;place-items:center;text-align:center;padding:12px 20px;border:1px solid rgba(255,255,255,.24);border-radius:20px;color:#f4c29f;font-size:11px;font-weight:800;letter-spacing:.15em}.founder-prices{display:grid;grid-template-columns:1fr 1fr;gap:26px}.founder-prices>div+div{border-left:1px solid rgba(255,255,255,.18);padding-left:26px}.founder-prices small{display:block;color:#cbbdb6;font-size:10px;font-weight:800;letter-spacing:.12em}.founder-prices strong{display:block;font:700 42px/1.1 "Playfair Display",serif;margin:5px 0}.founder-prices strong span{font:700 13px "DM Sans",sans-serif;margin-right:4px}.founder-prices strong em{font:600 12px "DM Sans",sans-serif;color:#cbbdb6;margin-left:5px}.founder-prices p{color:#cbbdb6;font-size:12px;line-height:1.5;margin:0}.pricing-grid{max-width:1140px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}.pricing-card{position:relative;background:var(--paper);border:1px solid var(--line);border-radius:25px;padding:27px;display:flex;flex-direction:column;box-shadow:0 14px 42px rgba(68,43,31,.07)}.pricing-card.featured{border:2px solid var(--orange);transform:translateY(-8px);box-shadow:0 24px 62px rgba(112,67,43,.14)}.popular-label{position:absolute;top:0;left:50%;transform:translate(-50%,-50%);border-radius:99px;background:var(--orange);color:#fff;padding:7px 15px;font-size:10px;font-weight:800;letter-spacing:.12em;white-space:nowrap}.pricing-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.pricing-card-head small{color:var(--sage);font-size:10px;font-weight:800;letter-spacing:.12em}.pricing-card h3{font:700 29px/1.1 "Playfair Display",serif;margin:5px 0 0}.pricing-card-head>span{padding:7px 9px;border-radius:99px;background:#e7eee4;color:var(--sage);font-size:10px;font-weight:800;white-space:nowrap}.price{font:700 45px/1 "Playfair Display",serif;margin:28px 0 22px}.price span{font:700 13px "DM Sans",sans-serif;margin-right:4px}.price em{font:600 12px "DM Sans",sans-serif;color:var(--muted);margin-left:5px}.pricing-card ul{list-style:none;padding:20px 0 4px;margin:0;border-top:1px solid var(--line);display:grid;gap:13px;color:var(--muted);font-size:13px;flex:1}.pricing-card li:before{content:"✓";color:var(--sage);font-weight:900;margin-right:9px}.pricing-card .button{margin-top:24px}.pricing-note{text-align:center;color:var(--muted);font-size:13px;margin:28px auto 0}.pricing-note strong{color:var(--sage)}
@media(max-width:950px){.founder-offer{grid-template-columns:1fr}.founder-badge{min-height:52px}.pricing-grid{grid-template-columns:1fr;max-width:600px}.pricing-card.featured{transform:none}.pricing-card-head>span{font-size:11px}}
@media(max-width:650px){.pricing{padding:72px 18px}.pricing-heading p{font-size:15px}.founder-offer{padding:22px}.founder-prices{grid-template-columns:1fr}.founder-prices>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.18);padding:20px 0 0}.pricing-card{padding:23px}.pricing-card-head{flex-direction:column}.pricing-card-head>span{align-self:flex-start}.price{font-size:42px}}

/* Legal pages and public footer */
.legal-view{background:radial-gradient(circle at 88% 4%,#efd9bf 0,transparent 26%),var(--cream)}.legal-shell{width:min(100%,960px);margin:auto}.legal-header{padding:28px 0 34px;border-bottom:1px solid var(--line)}.legal-header .eyebrow{margin-bottom:12px}.legal-header h1{font:700 clamp(42px,7vw,72px)/1.02 "Playfair Display",serif;letter-spacing:-.035em;margin:0 0 14px}.legal-header p{color:var(--muted);margin:0}.legal-content{margin-top:26px;background:var(--paper);border:1px solid var(--line);border-radius:26px;padding:clamp(24px,5vw,52px);box-shadow:0 18px 48px rgba(68,43,31,.07)}.legal-content section+section{border-top:1px solid var(--line);margin-top:28px;padding-top:28px}.legal-content h2{font:700 clamp(22px,3vw,29px)/1.2 "Playfair Display",serif;margin:0 0 12px}.legal-content p{color:var(--muted);font-size:15px;line-height:1.8;margin:10px 0}.legal-content strong{color:var(--ink)}.legal-content a{color:#995028;font-weight:700;text-underline-offset:3px}.site-footer{gap:28px;background:#f7f2e9}.site-footer>div{display:grid;gap:6px}.site-footer strong{color:var(--ink);font-size:13px}.legal-links{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.legal-links a{color:var(--muted);font-weight:700;text-decoration:none;padding:8px 10px;border-radius:99px}.legal-links a:hover,.legal-links a:focus-visible{background:#f0e4d5;color:var(--ink)}
@media(max-width:760px){.site-footer{align-items:flex-start;flex-direction:column}.legal-links{justify-content:flex-start}.legal-header{padding-top:12px}.legal-content{border-radius:20px}}
@media(max-width:560px){.legal-view{padding-inline:14px}.legal-header h1{font-size:42px}.legal-content{padding:22px}.legal-content p{font-size:14px}.legal-links{flex-direction:column;align-items:stretch;width:100%}.legal-links a{border:1px solid var(--line);text-align:center}.site-footer>div{text-align:center;width:100%}}
.brand-mark {
  background: transparent;
  overflow: hidden;
}

.brand-mark img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  transform: scale(2.1);
}

.stamps .filled {
  overflow: hidden;
}

.stamp-icon {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  transform: scale(2.1);
}
