@font-face { font-family:"Noto Sans"; src:url('/review-card-static/vendor/review-card-fonts/NotoSans-Regular.ttf') format('truetype'); font-weight:400; font-display:swap; }
@font-face { font-family:"Noto Sans"; src:url('/review-card-static/vendor/review-card-fonts/NotoSans-Bold.ttf') format('truetype'); font-weight:600 800; font-display:swap; }
.rc-page { --ff-body:"Noto Sans",system-ui,sans-serif; margin:0; background:var(--c-bg-light); color:var(--c-text); font:16px/1.55 var(--ff-body); }
.rc-page * { box-sizing:border-box; }
.rc-page [hidden] { display:none !important; }
.rc-page a { color:var(--c-brand); text-underline-offset:3px; overflow-wrap:anywhere; }
.rc-page a:hover { color:var(--c-brand-deep); }
.rc-page :is(a,button,input,textarea):focus-visible { outline:3px solid var(--c-brand); outline-offset:3px; }
.rc-header { max-width:1160px; margin:auto; display:flex; justify-content:space-between; align-items:center; padding:24px 28px; gap:24px; }
.rc-brand { display:flex; align-items:center; gap:12px; text-decoration:none; color:var(--c-brand-deep) !important; font-size:21px; font-weight:700; }
.rc-brand-detail { display:block; font-size:13px; font-weight:400; color:var(--c-text-soft); }
.rc-header nav { display:flex; gap:24px; font-size:14px; }
.rc-main { max-width:1104px; margin:24px auto 64px; padding:0 28px; min-height:60vh; }
.rc-page h1 { font-size:clamp(26px,3vw,36px); line-height:1.2; letter-spacing:-.025em; font-weight:650; margin:12px 0; }
.rc-page h2 { font-size:22px; line-height:1.3; font-weight:600; margin:0 0 12px; }
.rc-page p { margin:10px 0 18px; overflow-wrap:anywhere; }
.rc-page-title { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:36px; }
.rc-page-title p { color:var(--c-text-soft); margin-bottom:0; }
.rc-help { color:var(--c-text-soft); font-size:14px; }
.rc-back { font-size:14px; }
.rc-button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:11px 18px; border:1px solid transparent; border-radius:6px; font:600 15px/1.4 var(--ff-body); text-decoration:none; background:var(--c-brand); color:white !important; cursor:pointer; text-align:center; }
.rc-button:hover { background:var(--c-brand-deep); }
.rc-button:active { background:var(--c-brand-mid); }
.rc-button:disabled { opacity:.55; cursor:not-allowed; }
.rc-secondary { background:var(--c-bg-paper); border-color:var(--c-line-strong); color:var(--c-brand-deep) !important; }
.rc-secondary:hover { background:var(--c-bg-cream); }
.rc-start { max-width:650px; padding:36px; background:var(--c-bg-paper); border-radius:8px; }
.rc-start .rc-button { margin:6px 0; }
.rc-editor { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(0,1fr); gap:44px; align-items:start; }
.rc-form { min-width:0; }
.rc-form fieldset { padding:0 0 30px; margin:0 0 28px; border:0; border-bottom:1px solid var(--c-line-strong); min-width:0; }
.rc-form legend { font-size:21px; font-weight:600; margin-bottom:14px; }
.rc-page label { display:block; font-size:14px; font-weight:600; margin:16px 0 6px; }
.rc-page label span { font-weight:400; color:var(--c-text-soft); }
.rc-page input:not([type="checkbox"]),.rc-page textarea { width:100%; border:1px solid var(--c-line-strong); background:white; color:var(--c-text); padding:12px; border-radius:5px; font:inherit; min-width:0; }
.rc-page input::placeholder,.rc-page textarea::placeholder { color:var(--c-text-faint); }
.rc-page input[type="file"] { font-size:14px; padding:10px; }
.rc-page textarea { resize:vertical; }
.rc-field-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 18px; }
.rc-checkbox { display:flex !important; align-items:baseline; gap:10px; font-weight:400 !important; flex-wrap:wrap; }
.rc-checkbox input { width:18px; height:18px; accent-color:var(--c-brand); }
.rc-search-bar { display:flex; align-items:stretch; gap:10px; }
.rc-search-bar input { flex:1; }
.rc-search-bar button { flex-shrink:0; }
.rc-results { display:grid; gap:12px; }
.rc-result { padding:18px; background:var(--c-bg-paper); border:1px solid var(--c-line-strong); border-radius:6px; }
.rc-result.is-selected { border:2px solid var(--c-brand); padding:17px; }
.rc-result p { font-size:14px; margin:6px 0 12px; }
.rc-google-attribution { height:18px; width:auto; padding:10px 10px 5px; box-sizing:content-box; justify-self:end; }
.rc-selection { padding:12px 0; font-size:14px; }
.rc-actions,.rc-save-actions { display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.rc-save-actions { margin-top:22px; }
.rc-notice { color:var(--c-text-muted); background:var(--c-bg-cream); padding:16px; border-radius:6px; }
.rc-preview-column > h2 { font-size:18px; }
.rc-shop-profile { background:var(--c-bg-paper); padding:32px; border-radius:8px; min-width:0; overflow-wrap:anywhere; }
.rc-preview { margin-top:20px; }
.rc-shop-logo { display:block; width:96px; height:96px; object-fit:contain; margin-bottom:20px; }
.rc-preview-button { cursor:default; }
.rc-preview-button:hover { background:var(--c-brand); }
.rc-preserve-lines { white-space:pre-line; }
.rc-share { margin-top:28px; }
.rc-share h2 { font-size:20px; }
.rc-share .rc-actions { margin:14px 0; }
.rc-share #rc-qr { display:block; object-fit:contain; max-width:100%; }
.rc-artwork { display:block; width:100%; height:auto; border:1px solid var(--c-line-strong); margin:18px 0; }
.rc-nfc { border-top:1px solid var(--c-line-strong); margin-top:28px; padding-top:26px; }
.rc-nfc h2 { font-size:20px; }
.rc-nfc ol { padding-left:22px; font-size:14px; }
.rc-nfc li { padding-left:4px; margin-bottom:10px; }
.rc-nfc .rc-actions { margin:18px 0; }
.rc-nfc .rc-checkbox span { flex:1; min-width:0; color:var(--c-text); }
.rc-nfc summary { cursor:pointer; color:var(--c-brand); text-underline-offset:3px; }
.rc-nfc summary:focus-visible { outline:3px solid var(--c-brand); outline-offset:3px; }
.rc-nfc details p { font-size:14px; }
.rc-shop-row { display:flex; justify-content:space-between; align-items:center; padding:26px 0; border-bottom:1px solid var(--c-line-strong); gap:24px; }
.rc-shop-row > div:first-child { display:flex; align-items:center; gap:18px; min-width:0; }
.rc-shop-row h2 { font-size:20px; margin:0; overflow-wrap:anywhere; }
.rc-shop-row p { margin:4px 0; font-size:14px; }
.rc-row-logo { width:64px; height:64px; object-fit:contain; flex-shrink:0; }
.rc-state { display:block; color:var(--c-text-soft); font-size:13px; }
.rc-buyer-profile { max-width:580px; margin:32px auto; }
.rc-shop-details { margin:26px 0; }
.rc-shop-details > div { margin-bottom:16px; }
.rc-shop-details dt { font-size:13px; color:var(--c-text-soft); }
.rc-shop-details dd { margin:3px 0; }
.rc-review-invite { border-top:1px solid var(--c-line-strong); padding-top:26px; }
.rc-review-invite h2 { font-size:23px; }
.rc-review-invite .rc-button { width:100%; }
.rc-footer { display:flex; justify-content:space-between; max-width:1104px; margin:0 auto; padding:24px 28px; font-size:13px; color:var(--c-text-soft); gap:20px; }
.rc-skip { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.rc-skip:focus { position:fixed; top:8px; left:8px; z-index:10; width:auto; height:auto; padding:8px 12px; clip-path:none; background:white; }
.rc-print-toolbar { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:32px; }
.rc-print-card { width:105mm; min-height:148mm; background:white; margin:auto; padding:9mm; text-align:center; color:#0f172a; display:flex; flex-direction:column; align-items:center; }
.rc-print-card h2 { font-size:22px; overflow-wrap:anywhere; max-width:100%; }
.rc-print-card h3 { font-size:18px; margin:10px 0 0; }
.rc-print-card p { font-size:14px; margin:8px 0; }
.rc-print-card .rc-shop-logo { width:65px; height:65px; margin-bottom:10px; }
.rc-print-qr { width:55mm; height:55mm; max-width:100%; object-fit:contain; }
.rc-print-card small { font-size:10px; overflow-wrap:anywhere; max-width:100%; }
.rc-print-brand { font-size:11px; margin-top:auto; padding-top:15px; color:#475569; }
.rc-policy { max-width:760px; }
.rc-policy h2 { margin-top:32px; }
.rc-account { max-width:520px; margin:24px auto; }
.rc-settings { max-width:680px; margin:24px auto; }
.rc-settings dt { font-size:14px; color:var(--c-text-soft); }
.rc-settings dd { margin:4px 0 18px; font-weight:600; }
.rc-account button,.rc-settings form > button { margin:20px 0; }
.rc-settings-test { margin:24px 0; padding-top:24px; border-top:1px solid var(--c-line-strong); }
.rc-header nav { flex-wrap:wrap; justify-content:flex-end; }
.rc-page select { width:100%; min-height:48px; padding:12px; border:1px solid var(--c-line-strong); border-radius:5px; background:white; color:var(--c-text); font:inherit; }
.rc-page select:focus-visible { outline:3px solid var(--c-brand); outline-offset:3px; }
.rc-stock-create { max-width:560px; margin-bottom:32px; }
.rc-stock-create input { max-width:150px; }
.rc-stock-search { margin:30px 0; max-width:650px; }
.rc-stock-row { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:22px 0; border-bottom:1px solid var(--c-line-strong); }
.rc-stock-row p { margin:4px 0; }
.rc-serial { font-family:ui-monospace,monospace; overflow-wrap:anywhere; }
.rc-stock-detail { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; }
.rc-stock-detail > * { min-width:0; }
.rc-stock-submit { margin-top:24px; }
.rc-stock-detail summary { cursor:pointer; margin-top:22px; }
.rc-owner-code { margin-top:32px; border-top:1px solid var(--c-line-strong); padding-top:24px; }
.rc-owner-code input { font-size:23px; letter-spacing:.04em; }
.rc-activation { max-width:520px; margin:24px auto; }
.rc-activation-store { border-left:4px solid #146d51; padding:10px 0 10px 20px; margin:28px 0; }
.rc-activation-store h2 { margin:0; }
.rc-activation-store p { margin:8px 0; }
.rc-activation .rc-checkbox { flex-wrap:nowrap; }
.rc-activation .rc-checkbox input { flex-shrink:0; }
.rc-activate-submit { width:100%; margin-top:20px; }
@media(max-width:800px) { .rc-stock-detail { grid-template-columns:1fr; gap:32px; } }
@media(max-width:480px) { .rc-stock-row { flex-wrap:wrap; gap:10px; } .rc-stock-create .rc-search-bar input { max-width:none; } .rc-header { flex-wrap:wrap; } .rc-header nav { justify-content:flex-start; } }
@media(max-width:800px) { .rc-editor { grid-template-columns:1fr; gap:24px; } .rc-preview-column { max-width:580px; width:100%; margin:auto; } .rc-shop-row { align-items:flex-start; flex-direction:column; } }
@media(max-width:480px) { .rc-header { padding:20px; gap:14px; } .rc-header nav { gap:14px; font-size:13px; } .rc-brand { font-size:18px; gap:8px; } .rc-brand-detail { font-size:12px; } .rc-main { padding:0 20px; margin-top:16px; } .rc-page-title { flex-direction:column; align-items:flex-start; gap:16px; margin-bottom:28px; } .rc-field-grid { grid-template-columns:1fr; } .rc-shop-profile,.rc-start { padding:24px; } .rc-footer { flex-direction:column; gap:8px; padding:24px 20px; } .rc-search-bar { flex-wrap:wrap; } .rc-search-bar .rc-button { width:100%; } .rc-print-toolbar { flex-direction:column; align-items:flex-start; } .rc-print-card { width:100%; padding:24px; } }
@media print { @page { size:A6 portrait; margin:0; } .rc-print-page { background:white; } .rc-print-page :is(.rc-header,.rc-footer,.rc-print-toolbar,.rc-skip,noscript) { display:none; } .rc-print-page .rc-main { padding:0; margin:0; min-height:0; max-width:none; } .rc-print-card { width:105mm; min-height:148mm; padding:9mm; break-inside:avoid; } }
