/* Digital shop: scoped to the catalogue and tool details. */
.zigushi-shop{--shop-green:#355c4c;--shop-dark:#294739;--shop-muted:#687064;--shop-line:#d7dccf;font-size:19px;line-height:1.9;padding-bottom:76px}
.zigushi-shop a:focus-visible{outline:2px solid var(--shop-green);outline-offset:5px}
.zigushi-shop .shop-hero{display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:center;gap:56px;padding:58px 0 64px}
.zigushi-shop .shop-eyebrow{display:flex;align-items:center;gap:12px;color:var(--shop-muted);font-size:15px;letter-spacing:.14em;margin:0 0 20px}
.zigushi-shop .shop-eyebrow::before{content:"";width:26px;height:1px;background:#a18a5a}
.zigushi-shop .shop-hero h1{font-size:clamp(36px,4.3vw,54px);font-weight:400;letter-spacing:.12em;color:var(--shop-dark);margin:0 0 18px}
.zigushi-shop .shop-intro{font-family:var(--serif);font-size:clamp(26px,2.5vw,34px);line-height:1.8;letter-spacing:.035em;margin:0 0 20px}
.zigushi-shop .shop-intro-break{display:none}
.zigushi-shop .shop-lead{font-size:19px;line-height:1.95;color:var(--shop-muted);margin:0}
.zigushi-shop .shop-hero-art{width:100%;height:auto;transform:rotate(2deg)}
.zigushi-shop .shop-empty{display:grid;grid-template-columns:180px minmax(0,1fr);gap:48px;align-items:center;border-top:1px solid var(--shop-line);border-bottom:1px solid var(--shop-line);padding:46px 40px;background:linear-gradient(100deg,#eef0e5 0%,#f4f3e9 48%,transparent 100%)}
.zigushi-shop .shop-empty-mark{font-family:var(--serif);font-size:77px;line-height:1.5;text-align:center;color:var(--shop-green);border-right:1px solid #cdd4c3;padding-right:34px}
.zigushi-shop .shop-empty-mark span{display:block;font-size:14px;letter-spacing:.12em;white-space:nowrap;margin-top:9px}
.zigushi-shop .shop-empty-copy h2{font-size:25px;font-weight:400;line-height:1.7;margin:0 0 15px}
.zigushi-shop .shop-empty-copy>p{font-size:19px;line-height:1.9;color:var(--shop-muted);margin:0 0 24px}
.zigushi-shop .shop-button{display:inline-flex;justify-content:center;align-items:center;gap:24px;min-height:52px;padding:10px 22px;background:var(--shop-green);border:1px solid var(--shop-green);color:#fffdf6;font-size:18px;line-height:1.5;text-decoration:none;overflow-wrap:anywhere;text-align:center}
.zigushi-shop .shop-button:hover{background:var(--shop-dark);border-color:var(--shop-dark);color:#fffdf6}
.zigushi-shop .shop-button-outline{background:transparent;color:var(--shop-green)}
.zigushi-shop .shop-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding-top:24px;border-top:1px solid var(--shop-line);margin:0 0 30px}
.zigushi-shop .shop-section-heading h2{font-size:27px;font-weight:400;letter-spacing:.05em;margin:0}
.zigushi-shop .shop-section-heading p{font-size:16px;color:var(--shop-muted);margin:0}
.zigushi-shop .shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 26px}
.zigushi-shop .shop-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--shop-line);background:#fffdf7}
.zigushi-shop .shop-card-cover{display:grid;place-items:center;aspect-ratio:4/3;overflow:hidden;background:#e7ecdf;border-bottom:1px solid var(--shop-line)}
.zigushi-shop .shop-card-cover img{width:100%;height:100%;object-fit:cover}
.zigushi-shop .shop-tool-mark{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;width:90px;transform:rotate(-4deg)}
.zigushi-shop .shop-tool-mark span{display:block;aspect-ratio:1;background:#63846a;border:1px solid #54755c}
.zigushi-shop .shop-tool-mark span:nth-child(2),.zigushi-shop .shop-tool-mark span:nth-child(3){background:#c5b990;border-color:#b5a87e}
.zigushi-shop .shop-card-content{display:flex;flex-direction:column;flex:1;padding:23px 24px 24px;min-width:0}
.zigushi-shop .shop-card h3{font-size:25px;font-weight:400;line-height:1.65;margin:0 0 13px;overflow-wrap:anywhere}
.zigushi-shop .shop-card h3 a:hover{color:var(--shop-green)}
.zigushi-shop .shop-card-description{font-size:18px;line-height:1.9;color:var(--shop-muted);margin:0 0 22px;overflow-wrap:anywhere}
.zigushi-shop .shop-card-bottom{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px 20px;margin-top:auto;padding-top:14px;border-top:1px solid #e6e8df}
.zigushi-shop .shop-price{font-size:18px;color:var(--shop-green);margin:0;overflow-wrap:anywhere}
.zigushi-shop .shop-detail-link{display:inline-flex;align-items:center;gap:18px;min-height:48px;font-size:18px;line-height:1.6;color:var(--shop-green);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.zigushi-shop .shop-detail-link:hover{color:var(--shop-dark)}
.zigushi-shop .shop-card .shop-detail-link{margin-left:auto}
.zigushi-shop .pagination{margin-top:40px}
.zigushi-shop .pagination .page-numbers{min-width:48px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;font-size:18px;border-color:var(--shop-line)}
.zigushi-shop .pagination .page-numbers.current{background:var(--shop-green);border-color:var(--shop-green)}
.zigushi-shop .shop-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;color:var(--shop-muted);font-size:16px;line-height:1.8;padding-top:25px;margin-bottom:35px;overflow-wrap:anywhere}
.zigushi-shop .shop-breadcrumb a{text-decoration:underline;text-underline-offset:5px}
.zigushi-shop .shop-product-heading{max-width:830px;margin-bottom:40px}
.zigushi-shop .shop-product-heading h1{font-size:clamp(34px,4vw,48px);line-height:1.5;font-weight:400;letter-spacing:.035em;margin:0 0 20px;overflow-wrap:anywhere}
.zigushi-shop .shop-product-summary{font-size:21px;line-height:1.95;color:var(--shop-muted);margin-bottom:20px;overflow-wrap:anywhere}
.zigushi-shop .shop-product-updated{font-size:16px;color:var(--shop-muted);margin:0}
.zigushi-shop .shop-product-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;align-items:start;gap:50px}
.zigushi-shop .shop-product-main{min-width:0}
.zigushi-shop .shop-product-cover{margin:0 0 35px;background:#eeefe6}
.zigushi-shop .shop-product-cover img{width:100%;height:auto}
.zigushi-shop .shop-description{font-size:19px;line-height:2}
.zigushi-shop .shop-description h2{font-size:29px;font-weight:400}
.zigushi-shop .shop-description h3{font-size:24px;font-weight:400}
.zigushi-shop .shop-description a{color:var(--shop-green)}
.zigushi-shop .shop-description .alignwide,.zigushi-shop .shop-description .alignfull{width:100%;max-width:100%;margin-left:0;margin-right:0}
.zigushi-shop .shop-product-info{padding:26px;border:1px solid var(--shop-line);background:#edf0e5}
.zigushi-shop .shop-product-info h2{font-size:24px;font-weight:400;margin:0 0 20px}
.zigushi-shop .shop-product-info dl{margin:0 0 24px}
.zigushi-shop .shop-product-info dl>div+div{margin-top:18px}
.zigushi-shop .shop-product-info dt{font-size:16px;color:var(--shop-muted)}
.zigushi-shop .shop-product-info dd{font-size:21px;color:var(--shop-dark);line-height:1.6;margin:5px 0 0;overflow-wrap:anywhere}
.zigushi-shop .shop-product-info .shop-button{display:flex;width:100%;gap:16px}
.zigushi-shop .shop-help{font-size:17px;line-height:1.9;color:var(--shop-muted);margin:19px 0 0}
.zigushi-shop .shop-help:first-of-type{margin-top:0}
.zigushi-shop .shop-help a{text-decoration:underline;text-underline-offset:4px}
.zigushi-shop .shop-help+.shop-button{margin-top:22px}
.zigushi-shop .shop-product-info .shop-button+.shop-help{margin-top:19px}
.zigushi-shop .shop-product-footer{border-top:1px solid var(--shop-line);padding-top:24px;margin-top:50px}
.zigushi-shop .shop-content-pages{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:28px}
.zigushi-shop .shop-content-pages>*{min-width:48px;min-height:48px;text-align:center;border:1px solid var(--shop-line);padding:4px 10px}
@media(max-width:950px){.zigushi-shop .shop-hero{grid-template-columns:minmax(0,1fr) 220px;gap:25px}.zigushi-shop .shop-intro-break{display:block}.zigushi-shop .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.zigushi-shop .shop-empty{padding:34px 26px;grid-template-columns:130px minmax(0,1fr);gap:30px}.zigushi-shop .shop-empty-mark{font-size:65px;padding-right:25px}.zigushi-shop .shop-empty-mark span{font-size:12px;letter-spacing:0}.zigushi-shop .shop-product-layout{grid-template-columns:minmax(0,1fr) 260px;gap:30px}.zigushi-shop .shop-product-info{padding:22px}}
@media(max-width:700px){.zigushi-shop{padding-bottom:48px;font-size:19px}.zigushi-shop .shop-hero{display:block;padding:35px 0 40px;position:relative}.zigushi-shop .shop-hero-art{display:none}.zigushi-shop .shop-hero h1{font-size:39px;margin-bottom:17px}.zigushi-shop .shop-eyebrow{font-size:14px;margin-bottom:18px}.zigushi-shop .shop-intro{font-size:28px;line-height:1.75;margin-bottom:20px}.zigushi-shop .shop-intro-break{display:block}.zigushi-shop .shop-lead{font-size:19px}.zigushi-shop .shop-empty{display:block;padding:30px 23px}.zigushi-shop .shop-empty-mark{font-size:46px;border:0;padding:0;text-align:left;line-height:1.3;margin-bottom:24px;display:flex;align-items:center;gap:18px}.zigushi-shop .shop-empty-mark span{font-size:14px;letter-spacing:.06em;margin:0;white-space:normal}.zigushi-shop .shop-empty-copy h2{font-size:25px;line-height:1.75}.zigushi-shop .shop-empty-copy>p{font-size:19px}.zigushi-shop .shop-empty-break{display:none}.zigushi-shop .shop-section-heading{gap:15px}.zigushi-shop .shop-section-heading h2{font-size:26px}.zigushi-shop .shop-section-heading p{font-size:16px}.zigushi-shop .shop-grid{grid-template-columns:1fr;gap:25px}.zigushi-shop .shop-card-content{padding:22px}.zigushi-shop .shop-card-description{font-size:19px}.zigushi-shop .shop-card h3{font-size:26px}.zigushi-shop .shop-breadcrumb{padding-top:25px;margin-bottom:28px;font-size:16px}.zigushi-shop .shop-product-heading{margin-bottom:28px}.zigushi-shop .shop-product-heading h1{font-size:35px}.zigushi-shop .shop-product-summary{font-size:21px}.zigushi-shop .shop-product-layout{display:flex;flex-direction:column;gap:30px}.zigushi-shop .shop-product-main,.zigushi-shop .shop-product-info{width:100%}.zigushi-shop .shop-product-info{padding:25px}.zigushi-shop .shop-description{font-size:19px;line-height:1.95}.zigushi-shop .shop-description h2{font-size:27px}.zigushi-shop .shop-description h3{font-size:23px}.zigushi-shop .shop-help{font-size:19px}.zigushi-shop .shop-product-footer{margin-top:35px}}
@media(max-width:360px){.zigushi-shop .shop-intro-break{display:block}.zigushi-shop .shop-hero h1{font-size:36px}.zigushi-shop .shop-intro{font-size:26px}.zigushi-shop .shop-section-heading{display:block}.zigushi-shop .shop-section-heading p{margin-top:8px}.zigushi-shop .shop-empty{padding:26px 19px}.zigushi-shop .shop-empty-copy h2{font-size:23px}.zigushi-shop .shop-product-heading h1{font-size:32px}.zigushi-shop .shop-product-info{padding:22px}}
/* Clear return paths and the editable tool identifier. */
.zigushi-shop .shop-return-actions{display:flex;align-items:stretch;flex-wrap:wrap;gap:14px}
.zigushi-shop .shop-return-actions .shop-button{min-width:176px;gap:17px;min-height:52px;font-size:18px}
.zigushi-shop .shop-return-top{margin:-10px 0 36px;padding-bottom:28px;border-bottom:1px solid var(--shop-line)}
.zigushi-shop .shop-number{display:table;padding:4px 12px;margin:0 0 14px;border:1px solid #c7d1bd;background:#ecf0e3;color:var(--shop-green);font-size:15px;line-height:1.7;letter-spacing:.1em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;max-width:100%}
.zigushi-shop .shop-product-heading .shop-number{font-size:16px;margin-bottom:18px}
/* Product editorial blocks: populated only with the tool's supplied facts. */
.zigushi-shop .recorder-intro{padding:0 0 24px;border-bottom:1px solid var(--shop-line);margin-bottom:32px}
.zigushi-shop .recorder-intro h2{margin-top:0;font-size:30px;line-height:1.6;color:var(--shop-dark)}
.zigushi-shop .recorder-intro p:last-child{margin-bottom:0}
.zigushi-shop .recorder-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:32px 0 40px}
.zigushi-shop .recorder-feature{min-width:0;padding:25px 23px;background:#eff1e8;border:1px solid #dbe0d2}
.zigushi-shop .recorder-feature:nth-child(2),.zigushi-shop .recorder-feature:nth-child(3){background:#f3f0e4;border-color:#e0dccb}
.zigushi-shop .recorder-feature>span{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;padding:3px 9px;margin-bottom:17px;border:1px solid #b6c6ad;color:var(--shop-green);font-size:16px;line-height:1.5;letter-spacing:.06em}
.zigushi-shop .recorder-feature h3{font-size:24px;font-weight:400;line-height:1.6;margin:0 0 12px;color:var(--shop-dark)}
.zigushi-shop .recorder-feature p{font-size:19px;line-height:1.9;color:var(--shop-muted);margin:0}
.zigushi-shop .recorder-usage{margin:38px 0}
.zigushi-shop .recorder-usage h2{margin-top:0}
.zigushi-shop .recorder-usage ol{list-style:none;counter-reset:recorder-steps;padding:0;margin:24px 0 0}
.zigushi-shop .recorder-usage li{counter-increment:recorder-steps;position:relative;min-height:51px;padding:0 0 23px 57px;border-bottom:1px solid var(--shop-line);margin:0 0 23px;font-size:19px;line-height:1.9}
.zigushi-shop .recorder-usage li::before{content:counter(recorder-steps,decimal-leading-zero);position:absolute;left:0;top:1px;display:flex;align-items:center;justify-content:center;width:37px;height:37px;color:var(--shop-green);background:#e8eddf;border:1px solid #cbd5be;font-size:15px;line-height:1;font-variant-numeric:tabular-nums}
.zigushi-shop .recorder-usage li:last-child{margin-bottom:0}
.zigushi-shop .recorder-usage li p{margin:6px 0 0}
.zigushi-shop .recorder-license{margin:38px 0;padding:27px 30px;background:#e8edde;border-left:3px solid var(--shop-green);color:var(--shop-dark)}
.zigushi-shop .recorder-license h2{font-size:27px;margin:0 0 15px}
.zigushi-shop .recorder-license p{margin:0 0 12px;font-size:19px;line-height:1.9}
.zigushi-shop .recorder-license p:last-child{margin-bottom:0}
.zigushi-shop .recorder-license .recorder-price{font-family:var(--serif);font-size:45px;line-height:1.4;color:var(--shop-green);margin-bottom:14px}
.zigushi-shop .recorder-license .recorder-license-label{font-size:16px;color:var(--shop-muted);margin-bottom:7px}
@media(max-width:700px){.zigushi-shop .shop-return-top{margin:-3px 0 30px;padding-bottom:25px}.zigushi-shop .shop-return-actions{gap:12px}.zigushi-shop .shop-return-actions .shop-button{flex:1;min-width:0;padding-inline:16px;gap:12px;font-size:18px;min-height:52px}.zigushi-shop .shop-number{font-size:16px}.zigushi-shop .recorder-intro h2{font-size:27px}.zigushi-shop .recorder-features{gap:16px;margin:28px 0 32px}.zigushi-shop .recorder-feature{padding:22px}.zigushi-shop .recorder-feature h3{font-size:24px}.zigushi-shop .recorder-feature p{font-size:19px}.zigushi-shop .recorder-usage{margin:30px 0}.zigushi-shop .recorder-usage li{padding-left:51px}.zigushi-shop .recorder-license{padding:24px;margin:30px 0}.zigushi-shop .recorder-license h2{font-size:26px}.zigushi-shop .recorder-license .recorder-price{font-size:42px}}
@media(max-width:560px){.zigushi-shop .recorder-features{grid-template-columns:1fr}.zigushi-shop .shop-return-actions{display:grid;grid-template-columns:1fr}.zigushi-shop .shop-return-actions .shop-button{width:100%;min-width:0}}
@media print{.zigushi-shop .shop-hero-art{display:none}.zigushi-shop .shop-product-layout{display:block}.zigushi-shop .shop-product-info{margin-top:25px}.zigushi-shop .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.zigushi-shop .shop-card{break-inside:avoid}.zigushi-shop .shop-button{color:#222;background:none;border-color:#777}.zigushi-shop .shop-return-actions{display:none}}
