@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+Arabic:wght@400;500;600;700&family=DM+Sans:wght@400;500;600;700;800&display=swap');
:root{--bg:#f6f8f5;--white:#fff;--text:#183a33;--heading:#152a25;--muted:#768780;--line:#e3eae5;--green:#226b53;--lime:#cce5ad;--gold:#e9d6a7;--red:#bb4747;--shadow:0 9px 26px rgba(30,65,50,.047)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--heading);font-family:'IBM Plex Sans Arabic','DM Sans',Tahoma,Arial,sans-serif;line-height:1.6}button,input{font:inherit}button,a{transition:background .17s,opacity .17s,transform .17s}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.53}a{color:#27755d;text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,p{margin-top:0}h1{line-height:1.3}h2{line-height:1.35}h3{font-size:20px;line-height:1.45;margin-bottom:12px}.muted{color:var(--muted)}.small{font-size:12px}.loading{min-height:20vh;display:grid;place-items:center;color:var(--muted)}.eyebrow{font:700 11px 'DM Sans',sans-serif;letter-spacing:1.6px;color:#79968b;display:block;margin-bottom:9px}.btn{padding:11px 18px;border-radius:12px;font-weight:700;border:1px solid transparent;white-space:nowrap;min-height:45px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--green);color:white}.btn.primary:hover{background:#164a3b}.btn.secondary{background:#edf4ef;color:var(--green);border-color:#d9e8de}.btn.secondary:hover{background:#e1eee5}.wide,.full{width:100%}input{border:1px solid var(--line);border-radius:11px;min-width:0;padding:12px 14px;outline:none;background:white;width:100%;color:var(--text)}input:focus{border-color:#43977a;box-shadow:0 0 0 3px rgba(46,134,99,.12)}.field{display:flex;flex-direction:column;gap:6px;color:#436359;font-size:13px;font-weight:600}.form-stack{display:grid;gap:16px}.two-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.two-fields .full{grid-column:1/-1}.pill{padding:5px 10px;border-radius:30px;background:#eaf3ed;font-size:11px;color:#52816c;font-weight:700}.dot{color:#91c69c}.panel{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow)}.panel.error{max-width:550px;margin:80px auto}.notice{border:1px solid #dde7df;border-radius:12px;background:#f5f9f5;color:#6e8779;padding:12px;font-size:13px}.notice.good{background:#eaf8ef;color:#297652;border-color:#cbe9d6}.toast{position:fixed;bottom:24px;left:24px;max-width:430px;color:white;background:#235c48;border-radius:13px;padding:13px 18px;box-shadow:0 10px 34px #173b3344;z-index:600;font-size:13px;font-weight:700}.toast.bad{background:#973e3e}
/* Login */
.login-screen{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-hero{background:#133e35;padding:64px min(7vw,110px);color:white;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.login-hero:before{content:"";width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(123,201,160,.19),transparent 69%);position:absolute;top:-210px;left:-190px;pointer-events:none}.login-hero .brand-mark{height:55px;width:55px;background:#e7d7af;color:#184333;border-radius:19px;display:grid;place-items:center;font-size:28px;margin-bottom:17px}.login-hero h1{font:800 39px 'DM Sans',sans-serif;direction:ltr;margin:0 0 30px}.login-hero h2{font-size:35px;font-weight:700;margin-bottom:9px}.login-hero>p{font-size:15px;color:#d0e3d7;max-width:440px}.login-hero .muted{color:#aec9bd}.hero-card,.wallet-preview{border-radius:22px;background:linear-gradient(140deg,#246853,#144638);padding:26px;width:min(430px,100%);box-shadow:0 22px 50px rgba(3,27,18,.24);margin:27px 0;color:white;direction:ltr}.hero-card-top{display:flex;justify-content:space-between;font:bold 15px 'DM Sans',sans-serif;letter-spacing:.2px}.hero-card-top span{font-size:10px;color:#c2d8c9}.hero-card h3{font:800 26px 'DM Sans',sans-serif;margin:40px 0 15px;letter-spacing:1px}.hero-card-footer,.preview-bottom{display:flex;justify-content:space-between;margin-top:23px;align-items:center;font-size:12px;color:#d8eadc}.hero-card-footer b,.preview-bottom strong{font:700 25px 'DM Sans',sans-serif;color:white}.login-panel{padding:36px;display:flex;align-items:center;justify-content:center;background:#f9fbf8}.login-form{width:min(390px,100%)}.login-form h2{font-size:29px;margin-bottom:8px}.login-form .form-stack{margin-top:34px}.foot-note{color:#83978b;font-size:11px;margin:20px 0 0;line-height:1.9}
/* Dashboard */
.dashboard{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}.sidebar{background:#153d33;color:#e8f5e9;padding:28px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;min-width:0}.side-logo{display:flex;align-items:center;gap:10px;padding:0 12px 31px;font:800 23px 'DM Sans',sans-serif;direction:ltr;justify-content:flex-end}.side-logo .logo-box{width:41px;height:41px;display:grid;place-items:center;background:#dbcf9c;border-radius:13px;color:#1c493c;font-size:25px}.side-logo small{display:block;font:700 8px 'DM Sans',sans-serif;color:#95b9a8;letter-spacing:1.1px}.side-label{font-size:12px;color:#9ac0ac;padding:12px 14px 7px}.sidenav{display:flex;flex-direction:column;gap:6px}.nav-item{background:transparent;border:0;color:#b9d4c5;padding:12px 14px;border-radius:11px;text-align:right;font-size:13px;display:flex;align-items:center;gap:12px}.nav-item:hover,.nav-item.selected{background:#2c6551;color:#fff}.nav-item.selected{box-shadow:inset -3px 0 #e8d49c}.nav-ic{font:700 20px 'DM Sans',sans-serif;min-width:20px;text-align:center}.sidebar-bottom{border-top:1px solid #467260;margin-top:auto;padding:20px 5px 0;display:flex;align-items:center;gap:9px}.avatar{background:#b1d6b5;color:#164331;border-radius:50%;height:38px;width:38px;display:grid;place-items:center;font-weight:800}.sidebar-bottom>div{display:flex;flex-direction:column;min-width:0;flex:1}.sidebar-bottom b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-bottom small{font-size:10px;color:#c0d9c8}.sidebar-bottom button{background:transparent;border:0;color:#f4fbf5;font-size:22px}.main{min-width:0}.topbar{padding:27px 38px 23px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5ebe6;background:rgba(255,255,255,.75)}.topbar .eyebrow{margin-bottom:3px}.topbar h1{font-size:24px;margin-bottom:0}.top-right{display:flex;align-items:center;gap:9px;color:#678177;font-size:12px}.online-dot{width:8px;height:8px;border-radius:50%;background:#36b676;display:inline-block}.page{padding:30px 38px 70px;max-width:1500px;margin:auto}.intro{padding:5px 0 23px;display:flex;justify-content:space-between;align-items:center;gap:20px}.intro h2{font-size:26px;margin:0 0 6px}.intro p{color:#7b8f85;margin-bottom:0;font-size:13px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.metric{padding:19px 21px;display:flex;flex-direction:column;gap:2px;background:white;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.metric-icon{font-size:23px;color:#599c78}.metric strong{font:800 31px 'DM Sans',sans-serif;color:#203e33;line-height:1.5}.metric span{color:#879b90;font-size:12px}.two-cols{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.section-title h3{margin:0}.section-title .muted{font-size:12px}.activity{padding:13px 0;border-bottom:1px solid #eef2ed;display:flex;align-items:center;gap:12px}.activity:last-child{border-bottom:0}.activity-ic{height:38px;width:38px;border-radius:12px;background:#e6f5e8;color:#3b9565;display:grid;place-items:center}.activity div{display:flex;flex-direction:column;flex:1;min-width:0}.activity b{font-size:13px}.activity small{font-size:11px;color:#9baba1}.activity time{font-size:11px;color:#9baba1}.empty{padding:40px;text-align:center;color:#a2afa8}.promo{background:linear-gradient(160deg,#fcfdfc,#f0f7ef)}.promo p{font-size:13px;color:#869c8b}.url-box{font:12px 'DM Sans',sans-serif;border:1px dashed #c5d7c9;background:#fff;padding:15px;border-radius:12px;color:#357259;overflow-wrap:anywhere;margin:23px 0 10px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:520px}th{background:#f5f8f5;font-size:11px;color:#83968a;font-weight:700;text-align:right;padding:12px}td{font-size:13px;border-bottom:1px solid #edf2ed;padding:14px 12px;vertical-align:middle}td b{font-size:13px}.sub{font-size:11px;color:#99a79f;display:block}.content-grid{display:grid;grid-template-columns:1.4fr .7fr;gap:18px}.aside-info{height:max-content;background:#fdfefd}.large-icon{display:grid;place-items:center;width:60px;height:60px;border-radius:17px;background:#e4f1e7;font-size:33px;color:#276b52;margin-bottom:20px}.checkline{font-size:13px;margin:12px 0;color:#597a64}.soft-note{border:1px solid #e2ebdc;background:#f5f9ee;color:#70836c;border-radius:12px;padding:14px;font-size:11px;margin-top:28px}.scan-layout{display:grid;grid-template-columns:1.35fr .7fr;gap:18px}.scan-layout .panel>p.muted{font-size:13px}.step-tag{font-weight:700;font-size:13px;margin:24px 0 12px;display:flex;align-items:center;gap:12px}.step-tag:first-letter{font:700 18px 'DM Sans',sans-serif}.sale-control{display:flex;gap:9px}.sale-control input{flex:1}.reader{min-height:230px;max-width:480px;margin:4px auto 13px;border:2px dashed #d0e3d5;border-radius:15px;overflow:hidden;background:#f7fbf7;display:grid;place-items:center}.reader-placeholder{font-size:52px;color:#abc7b5;display:flex;flex-direction:column;text-align:center;align-items:center;gap:4px}.reader-placeholder span{font-size:11px}.reader video{width:100%!important;max-height:350px;object-fit:cover}.divider-text{text-align:center;color:#9aaca0;font-size:11px;margin:24px 0 12px}.manual-scan{display:flex;gap:8px}.manual-scan input{flex:1}.result-card{margin:22px 0 0;padding:19px;border-radius:16px}.result-card.success{background:#f2faf4;border:1px solid #c4e6ce}.result-card.fail{background:#fff1f1;border:1px solid #f2c3c3;color:#a34242}.result-card .result-head{color:#3c996d;font-weight:800;font-size:16px}.ready-flag{color:#256b48;font-weight:700}.stamps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;direction:ltr}.stamp{aspect-ratio:1;border-radius:50%;border:2px solid rgba(221,240,226,.5);display:grid;place-items:center;font:700 12px 'DM Sans',sans-serif;color:rgba(236,247,239,.55)}.stamp.filled{background:#e9d49c;border-color:#e9d49c;color:#244d40;font-size:20px}.result-card .stamps .stamp{color:#87aa91;border-color:#c4d8c9}.result-card .stamps .stamp.filled{color:#244d40;border-color:#e9d49c}.search{margin-bottom:17px;max-width:410px}.inline-form{padding:18px 0 22px;margin-bottom:20px;border-bottom:1px solid var(--line);display:flex;align-items:flex-end;gap:14px}.inline-form .field{flex:1}.count-pill{background:#e4f3e8;padding:4px 10px;border-radius:30px;color:#286e53;font-weight:800;font-size:12px}.preview-card{background:var(--card-color);border-radius:22px;color:#fff;padding:24px;margin:25px auto;max-width:390px;direction:ltr}.preview-head{font:700 18px 'DM Sans',sans-serif;margin-bottom:30px}.preview-card h3{font:800 26px 'DM Sans',sans-serif}.preview-bottom{margin-top:28px}
/* Customer card */
.public-page{min-height:100vh;background:radial-gradient(circle at 20% 5%,#d6e8db,#f3f7f2 38%,#f8faf8 73%);padding:25px 18px 60px;display:flex;flex-direction:column;align-items:center}.public-top{display:flex;justify-content:space-between;align-items:center;width:min(600px,100%);padding:8px 0 20px;direction:ltr}.brand-public{font:800 19px 'DM Sans',sans-serif;color:#1b4d3c}.public-top span{font:700 10px 'DM Sans',sans-serif;letter-spacing:1.4px;color:#96a89b}.public-panel{width:min(460px,100%);margin:37px auto;background:white;border:1px solid #e1eae2;border-radius:24px;padding:36px;box-shadow:var(--shadow)}.public-panel h1{font-size:28px}.public-panel p{font-size:13px;color:#728b79}.public-icon{font-size:31px;color:#266d52;background:#e5f4e8;border-radius:15px;display:grid;place-items:center;width:56px;height:56px;margin-bottom:17px}.public-panel form{margin-top:25px}.wallet-preview{width:min(460px,100%);margin:10px auto 0;background:linear-gradient(145deg,var(--card-color),#133e34);position:relative;padding:27px 27px 25px;box-shadow:0 20px 55px rgba(6,60,37,.2)}.wallet-top{display:flex;align-items:center;justify-content:space-between;font-size:18px;font-weight:800;gap:10px}.wallet-type{color:#d8e5d4;font:700 10px 'DM Sans',sans-serif;letter-spacing:1px}.wallet-preview h2{font:800 26px 'DM Sans',sans-serif;margin:31px 0 13px}.wallet-status{display:flex;flex-direction:column;margin:12px 0 22px}.wallet-status strong{font:800 38px 'DM Sans',sans-serif}.wallet-status span{font:700 10px 'DM Sans',sans-serif;letter-spacing:1.2px;color:#bfd5c7}.wallet-preview .stamp{border-color:#85aa94}.reward-box{margin:22px 0;border-top:1px solid #ffffff38;padding-top:17px;color:#e8e5d8;font-size:12px;display:flex;flex-direction:column;gap:4px}.reward-box b{font-size:18px;color:#fff}#qrcode{display:flex;justify-content:center;align-items:center;background:white;border-radius:12px;padding:16px;max-width:238px;margin:26px auto 12px;min-height:226px;direction:ltr}#qrcode img,#qrcode canvas{margin:auto}.qr-missing{color:#213f34;font-size:10px;overflow-wrap:anywhere;word-break:break-all;text-align:center}.qr-missing code{font:10px monospace}.code-label{text-align:center;color:#d4e7d7;font-size:11px;margin:12px 0 0}.customer-actions{width:min(460px,100%);text-align:center;margin:25px auto}.customer-actions h3{margin:0 0 8px}.customer-actions .muted{font-size:12px}.apple-button{display:flex;align-items:center;justify-content:center;text-decoration:none;background:#111b17;color:white;border-radius:13px;font:700 17px 'DM Sans',sans-serif;padding:14px;margin:20px 0 11px;direction:ltr}.apple-button:hover{text-decoration:none;background:#263b30}.apple-disabled{background:#e5e9e5;color:#88988b;border-radius:13px;padding:14px;margin:20px 0 11px;font-weight:700}
@media(max-width:1050px){.dashboard{grid-template-columns:205px minmax(0,1fr)}.metrics{grid-template-columns:repeat(2,1fr)}.page{padding:24px}.topbar{padding:23px}.content-grid,.two-cols,.scan-layout{grid-template-columns:1fr}.sidebar{padding:22px 11px}.side-logo{font-size:20px}}@media(max-width:700px){.login-screen{grid-template-columns:1fr}.login-hero{padding:38px 26px 30px;min-height:auto}.login-hero h1{font-size:28px;margin-bottom:8px}.login-hero h2{font-size:22px}.login-hero .hero-card{display:none}.login-panel{padding:44px 22px}.dashboard{display:block}.sidebar{height:auto;position:relative;padding:13px 12px 0}.side-logo{padding:0 8px 13px;font-size:20px;justify-content:flex-end}.side-label,.sidebar-bottom{display:none}.sidenav{display:flex;flex-direction:row;overflow:auto;gap:4px;padding:4px 0 10px}.nav-item{white-space:nowrap;padding:9px 12px;font-size:12px}.topbar{padding:19px 18px}.topbar h1{font-size:21px}.top-right{display:none}.page{padding:21px 15px 45px}.intro{flex-direction:column;align-items:stretch}.intro h2{font-size:21px}.metrics{gap:10px}.metric{padding:14px}.metric strong{font-size:26px}.panel{padding:18px;border-radius:17px}.two-fields{grid-template-columns:1fr}.content-grid{grid-template-columns:1fr}.sale-control,.manual-scan,.inline-form{flex-direction:column;align-items:stretch}.stamps{gap:6px}.wallet-preview .stamp{font-size:10px}.wallet-preview{padding:22px}.public-panel{padding:26px}.public-panel h1{font-size:24px}.toast{left:12px;right:12px;bottom:14px;max-width:none}}

/* Trial PWA customer install help and better stamp visibility */
.install-help{background:#fff;border:1px solid #d8e9dc;border-radius:15px;padding:15px;margin:14px 0;text-align:right;color:#22553e}
.install-help b{font-size:13px}.install-help p{font-size:12px;line-height:1.75;color:#5a7865;margin:5px 0 0}
#qrcode img{display:block;width:202px;height:202px;object-fit:contain;max-width:100%}

/* Merchant-branding additions */
.merchant-logo{width:52px;height:52px;object-fit:contain;border-radius:12px;vertical-align:middle;margin-inline-end:8px;background:rgba(255,255,255,.12)}
.brand-public{display:inline-flex;align-items:center;gap:9px;color:inherit;text-decoration:none;font-weight:800}
.brand-public .merchant-logo{width:42px;height:42px}
.public-icon .merchant-logo{width:72px;height:72px;margin:0}
.wallet-top .merchant-logo{width:42px;height:42px}
.logo-fallback{font-size:26px}

/* Stamp OM owner (Super Admin) dashboard: other roles unchanged */
.platform-theme{--bg:#f7f2e9;--white:#fffaf3;--heading:#2c271e;--text:#332d24;--muted:#887d6e;--line:#e5dac9;--green:#214b3c;--gold:#d7a85d;--shadow:0 8px 30px rgba(64,43,21,.065);background:var(--bg)}
.platform-theme .sidebar{background:linear-gradient(165deg,#082c25,#133e31 65%,#092b23);color:#f1e7d5;border-inline-start:1px solid #c59752}
.platform-theme .side-logo{font-family:Georgia,'DM Sans',serif;font-weight:500;font-size:25px;color:#e9c689}
.platform-theme .side-logo small{color:#e2c78d;letter-spacing:2px}
.platform-theme .side-logo .logo-box{background:transparent;color:#e8c07c;border:2px solid #c99c54;border-radius:15px;font-size:29px}
.platform-theme .nav-item{color:#e5e2d8;font-size:14px}
.platform-theme .nav-item:hover{background:#295945;color:#fff}
.platform-theme .nav-item.selected{background:linear-gradient(95deg,#b9823c,#e6be78);color:#20392f;box-shadow:none;font-weight:700}
.platform-theme .sidebar-bottom{border-top-color:#6f7a58}
.platform-theme .avatar{background:#e9cb8a;color:#183b2e}
.platform-theme .topbar{background:#fffcf7;border-bottom-color:#e6ddcf}
.platform-theme .topbar h1{color:#273b30}
.platform-theme .page{max-width:1500px}
.platform-theme .metric{background:linear-gradient(138deg,#fffdf9,#f4eee4);border-color:#e5d9c6;border-radius:18px;box-shadow:0 7px 26px #6f4e2810}
.platform-theme .metric-icon{color:#a87737;font-size:27px}
.platform-theme .metric strong{color:#253f32;font-size:34px}
.platform-theme .metric span{color:#756d60;font-weight:600}
.platform-theme .panel{background:linear-gradient(135deg,#fffdf9,#faf5ed);border-color:#e5d9c6;box-shadow:0 9px 30px #6b4a2610}
.platform-theme .btn.primary{background:#245840;color:#fff}
.platform-theme .btn.secondary{background:#f1e6d5;color:#664923;border-color:#dfcaac}
.owner-banner{position:relative;overflow:hidden;min-height:172px;background:linear-gradient(115deg,rgba(5,45,33,.95),rgba(17,68,49,.86)),radial-gradient(circle at 6% 0%,#c6a46a,transparent 60%);border-radius:21px;padding:36px 40px;color:#fff6e6;display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}
.owner-banner:after{content:'✧  ✧';position:absolute;bottom:-42px;left:10%;font-size:140px;letter-spacing:12px;color:#d9b87022;pointer-events:none}
.owner-banner .eyebrow{color:#e8ca8d}.owner-banner h2{font-size:30px;color:#fff7e8;margin:0 0 8px}.owner-banner p{margin:0;color:#e2e6dc;font-size:14px}.owner-banner-mark{color:#f2cc83;font-size:78px;padding-inline:30px}
.owner-section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;gap:12px}.owner-section-heading h2{font-size:23px;margin:0}.owner-current{font-size:12px;color:#7d8777}.owner-metrics{margin-bottom:18px}
.owner-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(250px,1fr);gap:18px;margin-bottom:18px}
.owner-analytics,.owner-quick{min-height:260px}.owner-bar-row{display:grid;grid-template-columns:minmax(90px,140px) minmax(0,1fr) 42px;gap:12px;align-items:center;margin:15px 0;font-size:13px}.owner-bar-row b{font-family:'DM Sans',sans-serif}.owner-bar-track{height:13px;background:#eee4d2;border-radius:30px;overflow:hidden}.owner-bar-track i{display:block;background:linear-gradient(90deg,#165a46,#d8ad63);height:100%;border-radius:30px}.owner-analytics-note{font-size:11px;color:#938b7d;margin:20px 0 0}.owner-quick{display:flex;flex-direction:column;gap:13px}.owner-quick h3{margin-bottom:5px}.owner-action{justify-content:stretch;border:1px solid #e7d0b4;background:#fff6e9;color:#55452e;width:100%;text-align:right}.owner-action:hover{background:#f5e9d7}.owner-tip{margin-top:auto;font-size:12px;line-height:1.8;color:#796c59;border-top:1px solid #e6dfd2;padding-top:14px}.owner-shops{margin-bottom:35px}.platform-theme .owner-shops th{background:#f4eadb}
@media(max-width:950px){.owner-grid{grid-template-columns:1fr}.owner-banner{min-height:140px;padding:24px}.owner-banner-mark{font-size:50px;padding-inline:10px}}
@media(max-width:610px){.owner-banner h2{font-size:23px}.owner-banner-mark{display:none}.owner-section-heading{align-items:flex-start;flex-direction:column}.owner-bar-row{grid-template-columns:75px minmax(0,1fr) 34px;gap:7px}}
/* Stamp OM secure, email-free customer card enrollment */
.customer-enroll-panel{max-width:600px;margin-inline:auto}.card-form-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#edf3ed;border-radius:13px;padding:5px;margin:22px 0}.card-form-tab{border:0;background:transparent;color:#527b68;border-radius:10px;font-weight:700;font-size:13px;font-family:inherit;min-height:43px;padding:10px 8px}.card-form-tab.current{background:#fff;color:#164a39;box-shadow:0 2px 7px #183a3314}.customer-consent,.recovery-ack{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:#355d4b;line-height:1.6}.customer-consent input,.recovery-ack input{width:19px;height:19px;flex:0 0 auto;margin-top:3px;accent-color:#17614a}.private-code-panel{background:#eaf4ec;border:1px solid #c5e0d0;padding:20px;border-radius:16px;display:grid;gap:11px;text-align:center;margin:22px 0}.private-code-panel>span{font-size:12px;color:#526d5f}.private-code-panel strong{color:#164d3a;font:700 clamp(14px,3.7vw,23px) 'DM Sans',monospace;letter-spacing:.035em;overflow-wrap:anywhere;user-select:all}.card-onboarding{max-width:610px;margin:25px auto;text-align:center}.card-onboarding .recovery-ack{text-align:start;margin:25px auto}.recovery-success-icon{width:58px;height:58px;border-radius:18px;background:#deefde;color:#1d6c4b;display:grid;place-items:center;font-size:30px;margin:12px auto}.device-actions{display:grid;gap:9px;margin:18px 0}.legacy-code-help{margin:20px 0;padding:18px;background:#f5f8f5;border:1px solid #e1e8dd;border-radius:16px}.legacy-code-help h4{margin:0 0 8px}.legacy-code-help p{font-size:13px}.legacy-code-help .form-stack{margin-top:15px}
@media (max-width:480px){.card-form-tab{font-size:12px}.private-code-panel{padding:14px}.customer-enroll-panel{padding:18px}}

/* Staff temporary card recovery. Uses existing Stamp OM panel styling. */
.staff-recovery-panel{margin:14px 0;padding:20px;border:1px solid #d9cfae;border-radius:18px;background:#faf7ef}
.staff-recovery-panel .field select{width:100%;padding:13px;border-radius:10px;border:1px solid #cddad0;background:#fff;color:#193f31}
.staff-recovery-panel .private-code-panel{margin-top:16px}
.staff-recovery-panel .private-code-panel strong{display:block;font-size:clamp(28px,5vw,40px);letter-spacing:0.14em;direction:ltr;text-align:center}
.staff-recovery-panel .recovery-ack{display:flex;align-items:center;gap:10px;line-height:1.4}
.staff-recovery-panel .recovery-ack input{width:18px;height:18px}
@media(max-width:600px){.staff-recovery-panel{padding:14px}.staff-recovery-panel .btn{max-width:100%;white-space:normal}}
