/* Presentation only: query parameters, scripts and public document data are untouched. */
:root { --page:#ffffff; --surface:#ffffff; --surface-raised:#fafafa; --surface-form:#ffffff; --surface-muted:#f3f3f3; --input:#f7f7f7; --input-line:#d0d0d0; --line:#dedede; --muted:#626262; --ink:#202020; }
html { background:var(--page); }
body.public-v1 { background:var(--page); color:var(--ink); font-family:system-ui,-apple-system,"Segoe UI",sans-serif; }
.public-v1 * { font-family:inherit; }
.public-v1 :where(a,button,input,select,summary):focus-visible { outline:3px solid #506d57; outline-offset:4px; }
.public-v1 .sz-mark { width:64px; height:64px; object-fit:contain; }
.public-v1 .utility-brand { display:flex; align-items:center; justify-content:center; gap:0; color:#171717; font-weight:750; font-size:27px; letter-spacing:-1px; margin-bottom:22px; }
.public-v1 .card,.public-v1 .box,.public-v1 .invoice { background:var(--surface); border:1px solid var(--line); box-shadow:0 10px 30px #2020200b; border-radius:20px; }
.public-v1 .card,.public-v1 .box { padding:32px; }
.utility-v1 .card,.utility-v1 .box { background:var(--surface-form); }
.public-v1 h1,.public-v1 h2,.public-v1 .card h2 { color:var(--ink); letter-spacing:-.035em; }
.public-v1 p,.public-v1 .subtitle,.public-v1 .card p,.public-v1 .card li,.public-v1 .label,.public-v1 .small,.public-v1 .footer,.public-v1 footer { color:var(--muted); }
.public-v1 button,.public-v1 .button,.public-v1 .confirm { background:#223629; color:#fff; border-radius:10px; box-shadow:none; }
.public-v1 button:hover,.public-v1 .button:hover { background:#182a1f; }
.public-v1 .cancel { background:var(--surface-muted); color:var(--muted); border:1px solid var(--line); }
.public-v1 .row,.public-v1 .amount-box { background:var(--surface-raised); border:1px solid var(--line); }
.public-v1 .amount { color:var(--ink); }
.public-v1 .badge,.public-v1 .updated { background:var(--surface-muted); border:1px solid var(--line); color:var(--muted); }
.public-v1 input { background:var(--input); color:var(--ink); border:1px solid var(--input-line); }
.public-v1 input::placeholder { color:var(--muted); }
.public-v1 .back { color:#223629; text-decoration:underline; text-underline-offset:4px; }
.public-v1 .success,.public-v1 .message.success { color:#285c36; background:#eff5ed; border-color:#d4e2ce; }
.public-v1 .error,.public-v1 .message.error { color:#9b352b; background:#fff3ef; border-color:#ecd1c7; }
.public-v1 .message.info,.public-v1 .message.loading { color:var(--muted); background:var(--surface-muted); border-color:var(--line); }
.legal-v1 .hero { padding:52px 24px; background:var(--page); border-color:var(--line); }
.legal-v1 .hero h1 { font-size:clamp(2.4rem,6vw,3.5rem); }
.legal-v1 .hero p { color:var(--muted); font-size:1rem; }
.legal-v1 .logo { display:flex; align-items:center; justify-content:center; color:#171717; font-size:28px; font-weight:750; letter-spacing:-1px; margin-bottom:20px; }
.legal-v1 .container { max-width:920px; padding:46px 24px; }
.legal-v1 .card { padding:30px; border-radius:16px; }
.legal-v1 .card:hover { transform:none; border-color:var(--line); }
.legal-v1 .card h2 { font-size:1.4rem; }
.legal-v1 .contact { background:var(--surface-muted); padding:36px; border-radius:16px; }
.legal-v1 .contact h2 { color:var(--ink); font-size:1.8rem; }
.legal-v1 .contact p { color:var(--muted); }
.legal-v1 .contact a { color:#fff; background:#223629; border-radius:9px; max-width:100%; overflow-wrap:anywhere; padding:14px 20px; }
.invoice-v1 .invoice { padding:38px; }
.invoice-v1 .invoice-product-brand { justify-content:flex-start; margin-bottom:24px; }
.invoice-v1 .brand-sub,.invoice-v1 .invoice-title,.invoice-v1 .section-title { color:var(--ink); }
.invoice-v1 .brand-name { font-size:clamp(1.7rem,4vw,3rem); letter-spacing:-.04em; overflow-wrap:anywhere; }
.invoice-v1 .table thead { background:var(--surface-muted); color:var(--ink); }
.invoice-v1 .grand { color:var(--ink); border-color:#d4d4d4; }
.invoice-v1 .total-row.grand { background:var(--surface-muted); }
.invoice-v1 .top { gap:28px; margin-bottom:40px; }
.invoice-v1 .info-area { grid-template-columns:1fr 1fr; gap:35px; }
.invoice-v1 .bottom { grid-template-columns:1fr 1fr; gap:35px; }
.invoice-v1 .bill p,.invoice-v1 .invoice-data p,.invoice-v1 .table td { font-size:16px; line-height:1.6; }
.invoice-v1 .table th { font-size:14px; }
.invoice-v1 .invoice-row { grid-template-columns:100px minmax(0,1fr); gap:16px; }
.invoice-v1 td,.invoice-v1 p,.invoice-v1 .value { overflow-wrap:anywhere; }
@media(max-width:700px) {
  body.public-v1 { padding:18px; }
  body.legal-v1 { padding:0; }
  .public-v1 .card,.public-v1 .box { padding:25px 20px; }
  .public-v1 h1 { font-size:1.8rem; }
  .legal-v1 .container { padding:30px 18px; }
  .legal-v1 .hero { padding:35px 20px; }
  .legal-v1 .hero h1 { font-size:2.4rem; }
  .legal-v1 .contact { padding:28px 18px; }
  .invoice-v1 .invoice { padding:22px 14px; }
  .invoice-v1 .top { flex-direction:column; gap:14px; margin-bottom:26px; }
  .invoice-v1 .invoice-title { font-size:2rem; margin:0; }
  .invoice-v1 .info-area,.invoice-v1 .bottom { grid-template-columns:1fr; gap:25px; }
  .invoice-v1 .table { table-layout:fixed; }
  .invoice-v1 .table td,.invoice-v1 .table th { font-size:11px; padding:12px 4px; overflow-wrap:anywhere; }
  .invoice-v1 .table th:nth-child(n),.invoice-v1 .table td:nth-child(n) { width:auto; }
  .invoice-v1 .table th:first-child { width:36%; }
  .invoice-v1 .brand-sub { font-size:12px; letter-spacing:3px; }
  .invoice-v1 .actions { display:flex; gap:8px; flex-wrap:wrap; }
  .invoice-v1 .actions button { flex:1 1 120px; }
}
/* KEEP pure white for printed invoice paper; screen panels use clean white and neutral gray. */
@media print { .invoice-v1 .invoice-product-brand { display:none; } body.invoice-v1 { padding:0; background:white; } .invoice-v1 .invoice { background:white; border:0; box-shadow:none; } }
