:root{--color-primary: #d85b94;--color-on-primary: #ffffff;--color-surface: #ffffff;--color-bg: #f3f3f1;--color-ink: #182e5c;--color-text: #3e3a39;--color-muted: #8c8c8c;--header-bg: #ffffff;--header-fg: #182e5c;--footer-bg: #ffffff;--radius: 8px;--font-family: "Noto Sans JP", system-ui, -apple-system, sans-serif;--border-subtle: #e3e1dc}body{margin:0;font-family:var(--font-family);color:var(--color-text);background:var(--color-bg)}.checkout-shell{max-width:480px;margin:0 auto;padding:24px 16px}.checkout-root{min-height:100vh;display:flex;flex-direction:column}.checkout-root>.checkout-layout{flex:1;width:100%;box-sizing:border-box}.checkout-header{background:var(--header-bg);color:var(--header-fg)}.checkout-header-minimal{border-bottom:3px solid var(--color-primary)}.checkout-header-banded{box-shadow:0 2px 8px #182e5c40}.checkout-header-inner{max-width:1120px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.checkout-logo{display:flex;align-items:center;gap:12px;color:inherit}.checkout-logo-img{height:36px;width:auto;display:block}.checkout-title{font-weight:700;font-size:1.0625rem;letter-spacing:.02em}.checkout-shop-info{max-width:1120px;margin:0 auto;padding:20px 24px 0;box-sizing:border-box;width:100%}.checkout-shop-name{margin:0;font-size:1.25rem;font-weight:700;color:var(--color-ink)}.checkout-shop-description{margin:6px 0 0;font-size:.9375rem;color:var(--color-text);line-height:1.7}.checkout-layout{max-width:1120px;margin:0 auto;padding:24px;display:grid;grid-template-columns:2fr 1fr;gap:24px;align-items:start}.payment-pane{background:var(--color-surface);border:1px solid var(--border-subtle);border-radius:var(--radius);padding:24px}.summary-pane{position:sticky;top:24px}.order-summary{background:var(--color-surface);border:1px solid var(--border-subtle);border-radius:var(--radius);padding:20px}.order-summary-title{margin:0 0 16px;font-size:1rem;font-weight:700;color:var(--color-ink)}.order-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}.order-item{display:flex;flex-direction:column;gap:12px}.order-item+.order-item{border-top:1px solid var(--border-subtle);padding-top:16px}.order-item-image{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:calc(var(--radius) - 2px);display:block}.order-item-body{display:flex;flex-direction:column;gap:6px}.order-item-name{margin:0;font-weight:700;color:var(--color-ink)}.order-item-description{margin:0;font-size:.875rem;color:var(--color-muted);line-height:1.6}.order-item-meta{margin:0;font-size:.875rem}.order-total-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:16px 0 0;padding-top:16px;border-top:1px solid var(--border-subtle)}.order-total-row dt{font-size:.875rem;color:var(--color-muted)}.order-total-row dd{margin:0}.order-total{font-size:1.375rem;font-weight:800;color:var(--color-ink);font-variant-numeric:tabular-nums}.checkout-controls{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-top:16px}.select-control{-moz-appearance:none;appearance:none;-webkit-appearance:none;font:inherit;font-size:.9375rem;color:var(--color-text);background-color:var(--color-surface);border:1px solid var(--border-subtle);border-radius:calc(var(--radius) - 2px);padding:9px 34px 9px 12px;min-width:7.5rem;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%238c8c8c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 12px center;transition:border-color .15s ease,box-shadow .15s ease}.select-control:hover:not(:disabled){border-color:var(--color-primary)}.select-control:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #d85b9440}.select-control:disabled{opacity:.6;cursor:not-allowed}.currency-selector{display:flex;flex-direction:column;gap:6px}.currency-selector>label{font-size:.8125rem;font-weight:600;color:var(--color-ink)}.pay-button{background:var(--color-primary);color:var(--color-on-primary);border:none;border-radius:var(--radius);padding:12px 16px;width:100%;cursor:pointer;display:inline-block;box-sizing:border-box;text-align:center;text-decoration:none;font-weight:700}.pay-button:disabled{opacity:.6;cursor:not-allowed}.error-panel{color:#b00020}.error-panel--neutral{color:var(--color-text)}.cancel-link-row{margin-top:1rem;text-align:center}.cancel-link{color:var(--color-muted);font-size:.85rem;text-decoration:underline}.checkout-footer{background:var(--footer-bg);border-top:1px solid var(--border-subtle);margin-top:24px}.checkout-footer-inner{max-width:1120px;margin:0 auto;padding:24px;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.checkout-footer-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.checkout-footer a{color:var(--color-text);font-size:.875rem;text-decoration:none}.checkout-footer a:hover{text-decoration:underline}.checkout-footer-powered{margin:0}@media(max-width:860px){.checkout-layout{grid-template-columns:1fr;padding:16px;gap:16px}.summary-pane{position:static;order:-1}.payment-pane{padding:16px}.checkout-header-inner{padding:12px 16px;gap:12px}.checkout-shop-info{padding:16px 16px 0}.checkout-footer-inner{flex-direction:column;align-items:stretch}.checkout-footer-powered{text-align:center}}
