.customer-page{--cp-ink:#132e25;--cp-soft:#eff5f0;max-width:1200px;margin:auto;padding:24px clamp(16px,3vw,36px) 64px;color:var(--cp-ink)}
.customer-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0 26px}.customer-top a{color:inherit;text-decoration:none;font-weight:700}.customer-top img{width:48px;height:52px;object-fit:contain}.customer-brand{display:flex;align-items:center;gap:12px;font-size:24px}.customer-hero{padding:28px;border-radius:22px;background:linear-gradient(120deg,#173d2c,#0b241e);color:white;margin-bottom:24px}.customer-hero h1{font-size:clamp(24px,4vw,36px);margin:0 0 12px;line-height:1.4}.customer-hero p{color:#deeadf;margin:0}.customer-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.customer-tabs button{border:1px solid #d8e2da;background:white;border-radius:12px;padding:12px 16px;cursor:pointer;color:var(--cp-ink);font:inherit;font-weight:600}.customer-tabs button[aria-selected=true]{color:white;background:#16452e;border-color:#16452e}.customer-card{background:white;border:1px solid #dbe5dd;border-radius:20px;padding:24px;margin-bottom:18px;min-width:0}.customer-card h2{font-size:21px;margin:0 0 16px}.customer-card p{line-height:1.7}.customer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.customer-field{display:flex;flex-direction:column;gap:7px;font-weight:600;font-size:14px;min-width:0}.customer-field input,.customer-field textarea,.customer-field select{box-sizing:border-box;width:100%;min-height:48px;padding:12px;border:1px solid #cbdace;border-radius:10px;font:inherit;color:#19342b;background:#fff}.customer-field textarea{min-height:96px;resize:vertical}.customer-span{grid-column:1/-1}.customer-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:18px}.customer-actions .btn{min-height:46px;white-space:normal}.customer-check{display:flex;gap:10px;align-items:flex-start;line-height:1.6;font-size:14px}.customer-check input{margin-top:5px;flex-shrink:0;width:18px;height:18px}.customer-muted{font-size:13px;color:#627a6a;line-height:1.6}.customer-note{border:1px solid #d3dfb8;background:#f6faef;border-radius:12px;padding:14px;line-height:1.7}.customer-key{display:block;overflow-wrap:anywhere;word-break:break-all;user-select:all;padding:16px;background:#f3f6f3;border:1px dashed #b9cbbd;border-radius:10px;font-size:13px;direction:ltr;text-align:left}.customer-invoice{display:flex;flex-direction:column;gap:12px;height:100%;margin:0}.customer-invoice header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.customer-invoice code{font-size:13px;overflow-wrap:anywhere}.customer-invoice strong{font-size:26px}.customer-invoice .btn{margin-top:auto}.customer-pill{display:inline-block;padding:5px 10px;border-radius:9px;background:var(--cp-soft);font-size:13px}.customer-receipt-tools{margin:0 auto 18px;max-width:1120px;border-radius:18px;padding:20px;background:#f2f7ef;border:1px solid #d8e5cd}.customer-receipt-tools h2{font-size:20px;margin:0 0 8px}.customer-install{display:flex;gap:20px;align-items:center;justify-content:space-between;background:#fff;border:1px solid #cbdcc7;padding:16px;border-radius:16px;margin:16px 0}.customer-install p{margin:4px 0 0}.customer-install [data-install-message]{font-size:13px;line-height:1.5}.customer-install .customer-actions{margin:0;flex-shrink:0}.customer-list-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 0;border-bottom:1px solid #e3ece4;flex-wrap:wrap}.customer-guest{max-width:620px;margin:24px auto}.customer-error{color:#a12626;line-height:1.6;font-size:14px}.customer-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:18px}.customer-toolbar select{max-width:220px;padding:10px;border-radius:10px;border:1px solid #cad7cb;background:white;font:inherit}.pw-header-actions a[data-customer-link]{flex:0 0 auto;color:inherit}.customer-checkout-saved{padding:14px;background:#f1f7ee;border-radius:12px;margin-bottom:16px}.customer-checkout-saved select{width:100%;padding:12px;border:1px solid #ceddc9;border-radius:10px;font:inherit}
@media(max-width:600px){.customer-page{padding:12px 14px 36px}.customer-grid{grid-template-columns:minmax(0,1fr)}.customer-card{padding:18px;border-radius:16px}.customer-hero{padding:22px 18px}.customer-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.customer-tabs button{padding:12px 6px;font-size:13px}.customer-install{display:block}.customer-install .customer-actions{margin-top:12px}.customer-actions .btn{flex:1}.customer-receipt-tools{padding:16px;margin:12px}.customer-top{flex-wrap:wrap;padding-bottom:18px}.customer-top a{font-size:14px}.customer-brand{font-size:23px}.customer-card .customer-check{grid-column:1}.customer-list-row .btn{flex:0 0 auto}}
@media print{.customer-receipt-tools,.customer-install,.customer-key,.customer-hero,.customer-tabs,.customer-top{display:none!important}}

.customer-receipt-extras{margin:16px 0;padding:18px;border:1px solid #d8e5cd;border-radius:16px;background:#f8faf6}.customer-receipt-tools .customer-muted{margin:8px 0 0;font-size:12px}.customer-receipt-tools [data-pdf-state]:empty{display:none}.customer-receipt-tools .customer-actions{margin-top:8px}.customer-receipt-tools h2{font-size:18px}.customer-receipt-extras .customer-note{margin-top:12px}.customer-receipt-extras .customer-install{margin-bottom:0}
/* R170 customer access: scoped, responsive and keyboard accessible. */
.customer-access-card{max-width:760px;margin:26px auto;padding:30px;box-shadow:0 18px 50px #163a2410}
.customer-access-head h2{font-size:clamp(23px,3vw,32px);margin:12px 0 8px}
.customer-auth-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:22px 0;padding:6px;background:#f0f5ef;border-radius:14px}
.customer-auth-tabs button{border:0;background:transparent;color:#244935;border-radius:10px;padding:12px 16px;min-height:44px;flex:1;font:600 14px Tahoma,Arial,sans-serif;cursor:pointer;white-space:nowrap}
.customer-auth-tabs button[aria-current=page]{background:#173f2f;color:#fff;box-shadow:0 4px 12px #173f2f22}
.customer-auth-tabs button:disabled{opacity:.5;cursor:wait}
.customer-password{display:flex;width:100%;align-items:center;position:relative}
.customer-password input{padding-inline-end:76px!important;min-width:0;flex:1;width:100%;box-sizing:border-box}
.customer-password button{position:absolute;inset-inline-end:6px;border:0;border-radius:8px;min-height:36px;padding:5px 9px;background:#edf4eb;color:#244935;font:inherit;font-size:12px;cursor:pointer}
.customer-access-back{text-align:center;border-top:1px solid #dce6de;padding-top:20px;margin-top:25px}
.customer-access-back a{color:#286943;font-weight:600}
.customer-checkout-memory{background:#f5f8f2;border:1px solid #d6e4d5;padding:18px;border-radius:14px;margin:18px 0;font-size:13px}
.customer-checkout-join{margin-bottom:16px;border-bottom:1px solid #d6e4d5;padding-bottom:16px;display:grid;gap:8px}
.customer-checkout-join a{color:#25633e;text-decoration:underline;text-underline-offset:3px}
.customer-checkout-memory .customer-actions{gap:8px;flex-wrap:wrap}
.customer-checkout-memory .btn{font-size:12px;white-space:normal;min-height:40px}
[data-customer-link]{position:relative}[data-account-greeting]{position:absolute;top:90%;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.5;color:#2f6846}
.customer-field{min-width:0}.customer-field input{min-width:0;box-sizing:border-box}
@media(max-width:600px){.customer-access-card{padding:19px;margin-top:18px}.customer-auth-tabs button{padding:10px 5px;font-size:12px}.customer-access-card .customer-grid{grid-template-columns:1fr}.customer-access-card .customer-span{grid-column:1/-1}.customer-checkout-memory{padding:14px}.customer-hero h1{overflow-wrap:anywhere}}

/* Hidden conditional credential fields must stay absent despite flex/grid rules. */
.customer-page [hidden]{display:none!important}

/* S3R42: website installation. Scoped components; existing catalogue geometry is retained. */
.pw-app-install-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:7px 12px;border:1px solid #dbe5de;border-radius:12px;background:#f4f8f2;color:#163b2c;font-weight:700;font-size:12px;white-space:nowrap;text-decoration:none;flex:none}
.pw-app-install-link:focus-visible,.pw-app-portal a:focus-visible,.pw-app-portal button:focus-visible,.pw-app-portal summary:focus-visible{outline:3px solid #548759;outline-offset:4px}
.pw-app-install-link .pw-icon{width:20px;height:20px}.pw-header-actions>.pw-app-install-link span{display:none}.pw-header-actions>.pw-app-install-link{padding:8px;width:44px}
.pw-mobile-categories>.pw-app-install-link{display:none}html[data-pirwaz-app-running="true"] [data-app-install-link]{display:none!important}
.pw-app-portal{--portal-ink:#153c2b;--portal-muted:#56675d;box-sizing:border-box;min-height:100dvh;color:var(--portal-ink);background:linear-gradient(155deg,#f5f8f3,#edf3eb);padding:0 max(20px,env(safe-area-inset-right)) max(32px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}
.pw-app-portal *{box-sizing:border-box}.pw-app-portal [hidden]{display:none!important}.pw-app-portal-nav{max-width:1080px;margin:auto;min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #dae3d8}
.pw-app-portal-nav>div{display:flex;align-items:center;gap:18px}.pw-app-portal-nav a{color:inherit;text-decoration:none;font-size:14px;min-height:44px;display:inline-flex;align-items:center;gap:12px}.pw-app-wordmark b{font-size:25px}.pw-app-wordmark img{border-radius:12px}
.pw-app-portal-grid{max-width:1040px;margin:56px auto 32px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.pw-app-intro{padding-block:20px}.pw-app-eyebrow{font-weight:800;letter-spacing:.08em;font-size:11px;display:block;color:#477054}.pw-app-hero-icon{display:block;object-fit:contain;border-radius:27px;margin:28px 0 20px;box-shadow:0 12px 32px #183b2312}.pw-app-portal h1{font-size:clamp(30px,4vw,46px);line-height:1.4;margin:0 0 18px;letter-spacing:-.03em}.pw-app-lead{font-size:18px;line-height:1.9;color:var(--portal-muted);max-width:32em}
.pw-app-benefits{margin:28px 0}.pw-app-benefits p{display:flex;align-items:center;gap:12px;line-height:1.7;font-size:15px}.pw-app-benefits svg{background:#e0eadc;border-radius:50%;padding:5px;width:28px;height:28px;flex:none}
.pw-app-online-note{display:flex;gap:10px;color:var(--portal-muted);font-size:13px;line-height:1.9;border-top:1px solid #d5e0d4;padding-top:22px}.pw-app-online-note svg{flex:none;margin-top:4px}
.pw-app-panel{min-width:0;background:#fff;border:1px solid #dbe5d8;border-radius:24px;padding:30px;box-shadow:0 20px 60px #1b392209}.pw-app-device{display:inline-block;background:#edf3e8;color:#385c40;border-radius:20px;padding:7px 13px;font-size:12px;font-weight:700}.pw-app-portal h2{font-size:25px;line-height:1.5;margin:19px 0 9px}.pw-app-panel>p{font-size:14px;line-height:1.9;color:var(--portal-muted)}.pw-app-portal h3{font-size:16px;line-height:1.6;margin:19px 0 10px}.pw-app-primary{margin-top:21px}.pw-app-primary .btn{width:100%;min-height:50px;justify-content:center;font-size:15px;background:#1c4b35;color:#fff}.pw-app-portal [data-install-status]:empty{display:none}.pw-app-portal [data-install-status]{font-size:13px;line-height:1.8}
.pw-app-steps{padding:0;list-style:none;display:grid;gap:11px;margin:16px 0}.pw-app-steps li{display:flex;align-items:flex-start;gap:12px}.pw-app-steps li>span{width:27px;min-width:27px;height:27px;border-radius:50%;background:#edf3e9;color:#2d5235;display:grid;place-items:center;font-size:12px;font-weight:800}.pw-app-steps p{font-size:13px;line-height:1.9;margin:0}.pw-app-small{font-size:12px;line-height:1.8;color:var(--portal-muted)}.pw-app-apk{border-top:1px solid #e3e9df;margin-top:24px;padding-top:4px}.pw-app-apk>p{font-size:13px;line-height:1.9;color:var(--portal-muted)}.pw-app-apk dl{display:flex;gap:24px;font-size:12px}.pw-app-apk dd{margin:5px 0 14px;font-weight:700}.pw-app-apk .btn{width:100%;min-height:48px;justify-content:center}.pw-app-apk details{font-size:12px}.pw-app-apk summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.pw-app-apk code{display:block;overflow-wrap:anywhere;word-break:break-all;white-space:normal;background:#f2f5f0;padding:12px;border-radius:10px;font-size:11px}.pw-app-apk a[aria-disabled=true]{opacity:.55;pointer-events:none}.pw-app-installed{display:flex;align-items:start;gap:12px;padding:22px 0}.pw-app-installed p{font-size:14px;line-height:1.8}.pw-app-warning{background:#fff7e7;padding:12px;border-radius:10px;font-size:13px;line-height:1.8;color:#785918}.pw-app-portal-footer{max-width:1040px;margin:24px auto 0;border-top:1px solid #d8e2d5;padding-top:20px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:12px;line-height:1.7;color:var(--portal-muted)}.pw-app-portal-footer .pw-text-link{min-height:44px;display:flex;align-items:center;gap:6px}
@media(max-width:800px){.pw-header-actions>.pw-app-install-link{display:none}.pw-mobile-categories>.pw-app-install-link{display:inline-flex;min-height:30px;padding:2px 9px;font-size:11px;gap:5px}.pw-mobile-categories>.pw-app-install-link .pw-icon{width:15px;height:15px}.pw-app-portal-grid{grid-template-columns:1fr;gap:14px;margin-top:22px;max-width:550px}.pw-app-intro{padding-block:6px}.pw-app-hero-icon{float:inline-end;width:68px;height:68px;margin:4px 10px 10px;border-radius:18px}.pw-app-portal h1{font-size:29px;margin-top:16px}.pw-app-eyebrow{font-size:10px}.pw-app-lead{font-size:15px;line-height:1.85}.pw-app-benefits{display:none}.pw-app-online-note{font-size:12px;margin-top:18px;padding-top:14px}.pw-app-panel{padding:23px;border-radius:20px}.pw-app-portal-nav{min-height:75px}.pw-app-portal-nav a{font-size:12px}.pw-app-wordmark b{font-size:22px}.pw-app-portal-nav>div{gap:10px}.pw-app-portal-footer{max-width:550px}.pw-app-portal{padding-inline:16px}.pw-app-portal h2{font-size:23px}}
@media print{.pw-app-install-link{display:none!important}.pw-app-portal{background:#fff}}

/* The version stays visible below installation instructions, never over a step. */
html[data-pirwaz-install-page=true] .pirwaz-release-badge{position:static;display:table;width:max-content;max-width:calc(100% - 32px);margin:0 auto 14px}
