@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,500;0,600;1,600&display=swap');
:root{--cream:#fff8f2;--ink:#182a42;--coral:#fa695a;--gray:#6e7882;--line:#ede3d9;--white:#fffdf9}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans',system-ui,-apple-system,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #fa695a66;outline-offset:2px}.container{max-width:1090px;padding:0 25px;margin:0 auto}.top{border-bottom:1px solid var(--line);background:#fffdfb}.row-top{min-height:77px;display:flex;justify-content:space-between;align-items:center;gap:15px}.brand{font-size:25px;font-weight:800;letter-spacing:-1.6px}.brand span{color:var(--coral)}.brand i{font-style:normal}.chip{font-size:10px;letter-spacing:1px;color:#ba6356;background:#ffe9e1;border:1px solid #f7d9ce;border-radius:20px;padding:10px 13px;font-weight:800}.quiet-link{font-size:12px;font-weight:750;color:#6a7480}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2.15px;color:#e67869}h1,h2,h3{margin:0}h1{font-size:clamp(48px,6vw,76px);line-height:1.08;letter-spacing:-4px;font-weight:700;margin:20px 0}h1 em{font-weight:600;font-family:'Playfair Display',Georgia,serif;color:var(--coral)}h2{font-size:34px;letter-spacing:-1.6px;margin:11px 0}h3{font-size:26px;letter-spacing:-.9px;margin:10px 0}p{line-height:1.66;color:var(--gray)}.intro{padding-top:53px;padding-bottom:36px;display:grid;grid-template-columns:55% 45%;gap:24px;align-items:center}.intro p{font-size:16px;max-width:440px}.hero-photo{border-radius:28px;height:275px;overflow:hidden;position:relative;box-shadow:0 19px 45px #684b3c2a;background:#ffd8b8}.hero-photo img{width:100%;height:100%;object-fit:cover}.hero-photo:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#1225399c)}.hero-photo span{position:absolute;bottom:20px;left:24px;color:white;font:italic 600 22px 'Playfair Display',Georgia,serif;z-index:1}.panel{background:var(--white);border:1px solid #f0e8df;border-radius:24px;padding:32px;margin-bottom:28px;box-shadow:0 13px 45px #5741390d}.status{font-weight:700;color:#667480}.two{display:grid;grid-template-columns:1fr 1fr;gap:46px;padding-top:12px}.hint{background:#fff4eb;border-radius:18px;padding:25px;border:1px solid #f6e8dc}.hint b{font-size:18px}.hint p{font-size:13px}.hint small{display:block;margin-top:22px;color:#848d94;font-size:11px}.hide{display:none!important}label:not(.checkbox){display:block;font-size:12px;font-weight:800;margin:18px 0 9px}input,textarea,select{display:block;background:#fff;border:1px solid #dedad5;border-radius:12px;padding:14px;color:var(--ink);width:100%;max-width:480px}textarea{resize:vertical}.checkbox{display:flex;gap:12px;align-items:start;font-size:13px;line-height:1.6;padding:20px 0}.checkbox input{width:19px;height:19px;flex:0 0 auto;accent-color:var(--coral);margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 20px;max-width:700px}.form-actions,.dashboard-links{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.primary,.secondary,.plain{border:0;border-radius:13px;min-height:47px;padding:14px 19px;font-size:13px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:8px}.primary{background:var(--coral);color:white;box-shadow:0 8px 25px #e8635328}.secondary{background:#fff;border:1px solid #e1d6ce;color:var(--ink)}.plain{background:transparent;color:var(--gray)}.message{font-size:13px;font-weight:700;color:#b45a4d;min-height:20px}.dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:9px 0 18px}.dashboard-head h2{font-size:38px}.dashboard-head p{font-size:13px;margin-top:0}.notice{display:flex;gap:17px;padding:19px 22px;border-radius:16px;border:1px solid #f5d3c5;background:#fff0e9;margin:12px 0 24px}.notice>span{font-size:27px;color:var(--coral)}.notice b{font-size:14px}.notice p{font-size:12px;margin:6px 0 0}.stat-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:25px 0}.stat{background:#fff;border:1px solid #ece4dc;border-radius:18px;padding:21px}.stat small,.stat>span{display:block;font-size:12px;color:#8c949b}.stat strong{display:block;font-size:36px;letter-spacing:-1.5px;margin:8px 0 4px}.dashboard-block{margin-top:18px}.block-head{display:flex;align-items:end;justify-content:space-between;gap:15px}.block-head p{margin-top:5px;font-size:13px}.qr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:25px}.qr-card{border:1px solid #e9e0d8;border-radius:20px;padding:19px;background:linear-gradient(145deg,#fffaf6,#fff)}.qr-tag{font-size:10px;color:#a77365;font-weight:800;letter-spacing:1.4px}.qr-card h4{font-size:18px;margin:10px 0 2px}.qr-card p{font-size:11px;margin:0;color:#9399a1}.qr-card img{width:min(100%,195px);height:auto;aspect-ratio:1;object-fit:contain;display:block;background:white;border:10px solid white;border-radius:14px;margin:12px auto}.qr-actions{display:flex;flex-wrap:wrap;gap:7px}.qr-actions a,.qr-actions button{font-size:11px;font-weight:800;border:1px solid #e8dcd3;border-radius:9px;padding:10px 11px;background:white;flex:1;text-align:center;min-height:38px}.qr-actions button{color:var(--ink)}.qr-url{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#929198;max-width:100%;margin-top:9px}.add-row{border-top:1px solid #e9e3da;margin-top:23px;padding-top:19px;display:flex;gap:15px;align-items:end;flex-wrap:wrap}.add-row>div{flex:1;min-width:190px}.add-row label{margin-top:0!important}.add-row input{max-width:none}.add-row button{margin-bottom:0}.draft-grid{max-width:720px}.draft-list{margin:20px 0;display:grid;gap:10px}.draft-item{background:#fff6ee;border:1px solid #f2e3d7;border-radius:12px;display:flex;justify-content:space-between;gap:10px;align-items:center;padding:14px}.draft-item b{font-size:13px}.draft-item small{display:block;font-size:11px;color:#8e7e76;margin-top:3px}.draft-item button{border:1px solid #e2d4ca;border-radius:10px;padding:9px 12px;color:#955849;background:white;font-weight:750}.footline{color:#6d7884;margin:25px 0 70px;background:#fff7f0;padding:21px 25px;border-radius:15px;border:1px solid #f6e8db;font-size:12px}.footer{display:flex;justify-content:space-between;gap:15px;padding-bottom:35px;color:#879097;font-size:12px}
@media(min-width:760px){.panel{padding:35px 40px}}@media(max-width:840px){.qr-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:660px){.container{padding:0 18px}.row-top{min-height:68px}.chip{display:none}.intro{grid-template-columns:1fr;padding-top:28px;padding-bottom:16px;gap:15px}.intro h1{font-size:52px;letter-spacing:-3px}.hero-photo{height:190px}.panel{padding:21px;border-radius:19px}.two,.form-grid{grid-template-columns:1fr;gap:6px}.dashboard-head{align-items:start;flex-direction:column}.dashboard-head h2{font-size:31px}.stat-row{grid-template-columns:1fr 1fr;gap:8px}.stat{padding:15px}.stat:nth-child(3){grid-column:1 / -1}.stat strong{font-size:29px}.qr-grid{grid-template-columns:1fr}.qr-card img{width:180px}.add-row button{width:100%}.form-actions .primary{width:100%}.notice{padding:15px}.notice b{font-size:12px}.intro p{font-size:14px}}@media print{body{background:white}.top,.intro,.stat-row,.notice,.dashboard-head,.block-head,.add-row,.draft-grid,.draft-list,.footline,.footer,.qr-card .qr-actions,.qr-card .qr-url{display:none!important}.container{padding:0!important;max-width:none}.panel{border:0;box-shadow:none;padding:0;margin:0}.qr-grid{display:block;margin:0}.qr-card{display:none;border:0}.qr-card.print-focus{display:block!important;max-width:550px;margin:50px auto;text-align:center}.qr-card img{width:340px;margin:30px auto}.qr-card h4{font-size:32px}.qr-card p{font-size:16px}}


/* R2 merchant workspace: restrained typography and progressive disclosure */
body{background:#fbf8f5}
#marketingIntro.intro{padding-top:32px;padding-bottom:20px}
#marketingIntro h1{font-size:clamp(42px,5.4vw,62px);line-height:1.05}
#marketingIntro .hero-photo{height:230px}
#marketingIntro p{max-width:390px;font-size:14px}
#dashboard{padding-bottom:52px}
.dashboard-head{padding-top:22px;padding-bottom:10px}
.dashboard-head h2{font-size:clamp(29px,3vw,39px);font-weight:750;margin:7px 0 4px}
.dashboard-head p{color:#849099;margin:0;font-size:12px}
.workspace-note{display:flex;align-items:center;gap:10px;padding:11px 15px;border:1px solid #f5e4d6;background:#fff7ee;border-radius:12px;color:#8b7867;font-size:11px;margin:12px 0 16px}
.workspace-note b{color:#bc6558;background:#ffe1d6;padding:5px 9px;border-radius:30px;letter-spacing:.8px;font-size:10px}
.workspace-tabs{display:flex;gap:6px;border-bottom:1px solid #eee6df;padding-bottom:0;overflow-x:auto;scrollbar-width:thin;margin:0 0 23px}
.workspace-tabs button{white-space:nowrap;background:transparent;border:0;border-bottom:2px solid transparent;padding:15px 18px;margin:0;color:#6c7983;font-size:13px;font-weight:650;cursor:pointer}
.workspace-tabs button.active{border-color:#f56c5c;color:#15283f;font-weight:800}
.workspace-view{animation:enterUp .2s ease-in-out}
@keyframes enterUp{from{opacity:.55;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.workspace-view .stat-row{margin:0 0 18px}
.workspace-view .stat{padding:19px 24px;border-radius:14px;background:white}
.workspace-view .stat strong{font-size:33px;line-height:1.2;margin:4px 0 0}
.quick-panel{background:#1b2b43;color:white;border-radius:19px;padding:28px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.quick-panel h3{font-size:25px;letter-spacing:-.9px;font-weight:750;margin:5px 0}
.quick-panel p{color:#bac3ce;font-size:12px;margin:4px 0 0}
.quick-panel .eyebrow{color:#f8aaa0}
.quick-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.quick-actions .secondary{color:#17273e}
.overview-two{display:grid;grid-template-columns:1.25fr .75fr;gap:28px;margin-top:25px}
.overview-two>div{background:#fff;border:1px solid #eee6df;border-radius:17px;padding:23px}
.overview-two h3{font-size:19px;margin:0 0 15px;font-weight:750}
.activity-list{max-height:285px;overflow-y:auto}
.activity-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 0;border-bottom:1px solid #f2ebe5;font-size:12px;font-weight:650}
.activity-row:last-child{border:0}.activity-row small{color:#9aa1a8;font-size:10px;white-space:nowrap}
.mini-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.mini-metrics div{border-right:1px solid #f0e9e1;display:flex;flex-direction:column;gap:6px;padding-right:8px}.mini-metrics div:last-child{border:0}
.mini-metrics b{font-size:26px}.mini-metrics small{font-size:10px;color:#89949e}
.fine{font-size:11px;line-height:1.6;color:#929aa3;margin-top:15px}
.workspace-view .view-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:12px 0 20px}
.view-heading h3{font-size:25px;margin:0}.view-heading p{font-size:12px;margin:4px 0}
.mini-chip{background:#fff0e7;color:#b66d60;padding:8px 12px;font-size:10px;border-radius:30px;font-weight:750}
.workspace-view .qr-grid{margin-top:20px}
.workspace-view .qr-card{padding:17px;border:1px solid #eee3d8;background:white;border-radius:17px}
.workspace-view .qr-card h4{font-size:15px;margin:4px 0}
.workspace-view .qr-card small{font-size:11px;color:#8b949b}
.workspace-view .qr-card img{max-width:170px;margin:12px auto}
.workspace-view .qr-actions{margin-top:14px}
.workspace-view .qr-actions a,.workspace-view .qr-actions button{padding:9px 6px;min-height:36px;font-size:11px}
.workspace-view .add-row{border:0;background:#fff;padding:17px;margin:0;border:1px solid #eee6df;border-radius:16px;align-items:end}
.workspace-view .add-row>div{flex:1 1 180px}
.workspace-view .add-row label{margin-bottom:7px!important}
.workspace-view .add-row input{min-height:46px}
.workspace-view .add-row button{min-height:46px}
.workspace-view .draft-grid{padding:17px;max-width:600px}
.form-drawer{margin:16px 0;border:1px solid #eee2d8;background:#fff;border-radius:14px}
.form-drawer summary{font-weight:750;padding:16px 19px;cursor:pointer;font-size:13px}
.form-drawer[open] summary{border-bottom:1px solid #eee2d8}
.active-campaign{margin:12px 0}
.campaign-card{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff7ed;border:1px solid #f5dace;padding:19px;border-radius:14px}
.campaign-card h4{font-size:18px;margin:8px 0}.campaign-card small{font-size:10px;font-weight:850;letter-spacing:1px;color:#cc6557}
.campaign-card span{font-size:12px;color:#6b7780}
.staff-list{margin:20px 0;border-radius:16px;background:white;border:1px solid #eee6df}
.staff-list>.muted{padding:18px}
.staff-row{padding:14px 18px;border-bottom:1px solid #f0e9e0;display:flex;justify-content:space-between;align-items:center;gap:12px}
.staff-row:last-child{border-bottom:0}
.staff-row b{display:block;font-size:13px}
.staff-row small{display:block;font-size:11px;color:#88939b;margin-top:4px}
.staff-actions{display:flex;gap:5px;align-items:center}
.staff-actions button{min-height:35px;padding:9px;font-size:11px}
button.danger{color:#c15d52}
.secret-panel{background:#fff5d8;border:1px solid #ecdca4;border-radius:15px;padding:19px;margin:17px 0;max-width:590px}
.secret-panel strong{display:block;margin-bottom:14px;font-size:15px}
.secret-row{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:10px 0;font-size:11px}
.secret-row code{word-break:break-all;background:white;padding:8px;border-radius:8px;color:#15273e;font-size:12px}
.secret-panel p{font-size:11px;margin-bottom:0}
.draft-list .draft-item{display:flex;align-items:center;justify-content:space-between;gap:12px;background:white;border:1px solid #eee2d8;border-radius:13px;margin-top:9px}
.draft-list .draft-buttons{display:flex;gap:4px;flex-shrink:0}
.draft-list button{font-size:11px;min-height:36px;padding:8px}
.settings-fields{max-width:610px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin:9px 0 22px}
.settings-fields label{margin-top:0}
.settings-fields input{width:100%}
#view-settings>.fine{border-top:1px solid #e9e1d9;padding-top:20px;margin-top:32px}
#login,#setup{max-width:800px}
#login h2,#setup h2{font-size:32px}
#login .hint{border:1px solid #f1e6dc;background:#fff9f4}
#login .hint p{font-size:12px}
#login .two{padding-top:6px}
#login .two input{margin-bottom:15px}
@media(max-width:700px){
 #marketingIntro{grid-template-columns:1fr 1fr;gap:14px}
 #marketingIntro .hero-photo{height:154px}
 #marketingIntro h1{font-size:38px;letter-spacing:-1.9px}
 #marketingIntro .eyebrow{font-size:8px}
 #marketingIntro p{font-size:12px;margin-bottom:0}
 .dashboard-head{align-items:flex-start;flex-direction:row}
 .dashboard-head .dashboard-links{display:flex;gap:4px}
 .dashboard-head .dashboard-links a,.dashboard-head .dashboard-links button{font-size:10px;padding:9px;min-height:35px}
 .workspace-note{font-size:10px;padding:9px}
 .workspace-tabs{margin-left:-18px;margin-right:-18px;padding-left:12px}
 .workspace-tabs button{font-size:12px;padding:13px 14px}
 .quick-panel{display:block;padding:22px}
 .quick-actions{margin-top:20px}
 .quick-actions>*{flex:1 1 110px;font-size:11px}
 .overview-two{grid-template-columns:1fr;gap:13px}
 .overview-two>div{padding:17px}
 .stat-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
 .stat-row .stat{padding:14px 12px!important}
 .stat-row .stat:nth-child(3){grid-column:auto}
 .stat-row .stat small{font-size:10px}
 .stat-row .stat strong{font-size:28px}
 .workspace-view .qr-grid{grid-template-columns:1fr}
 .settings-fields{grid-template-columns:1fr;gap:2px}
 .dashboard-head h2{font-size:26px}
}
@media(max-width:370px){#marketingIntro .hero-photo{display:none}#marketingIntro{grid-template-columns:1fr}.dashboard-head{flex-direction:column;gap:8px}}
@media print{.workspace-note,.workspace-tabs,.dashboard-head,.view-heading,.qr-grid~*,.quick-panel,.top,.footer{display:none!important}
#dashboard #view-qrs{display:block!important}#view-qrs .qr-grid{display:block!important}#view-qrs .qr-card{display:none}
#view-qrs .qr-card.print-focus{display:block!important;max-width:600px;margin:30px auto;text-align:center;border:0}
#view-qrs .qr-card.print-focus img{max-width:400px;width:75vw}
#view-qrs .qr-actions{display:none}.marketingIntro{display:none}}
