.invoice-layout{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:minmax(320px,420px) 1fr;gap:32px;align-items:start}
  .form-card{border:3px solid var(--ink);padding:28px;background:#fff}
  .form-card h2{font-size:20px;margin-bottom:18px}
  .rowline{display:grid;grid-template-columns:1fr 70px 90px 28px;gap:8px;margin-bottom:8px;align-items:center}
  .rowline input{border:2px solid var(--line);padding:9px;font-size:14px;width:100%;font-family:'Inter',sans-serif}
  .rowline .del{border:0;background:none;color:var(--muted);cursor:pointer;font-size:18px}
  .addrow{background:none;border:2px dashed var(--line);width:100%;padding:10px;cursor:pointer;font-family:'Archivo',sans-serif;font-weight:600;color:var(--muted);margin-top:4px}
  .addrow:hover{border-color:var(--cyan);color:var(--ink)}
  .toolbar{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}
  /* invoice preview */
  .preview-wrap{position:sticky;top:96px}
  .invoice{background:#fff;border:1px solid var(--line);padding:40px;font-size:14px;color:var(--ink);box-shadow:0 10px 40px rgba(0,0,0,.08)}
  .inv-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;gap:20px}
  .inv-top .logo{display:flex;align-items:center;gap:10px}
  .inv-top .logo .tile{width:30px;height:30px;background:var(--charcoal);position:relative;flex:none}
  .inv-top .logo .tile::after{content:"";position:absolute;right:0;bottom:0;width:10px;height:10px;background:var(--cyan)}
  .inv-title{font-family:'Archivo Expanded','Archivo',sans-serif;font-weight:600;font-size:30px;letter-spacing:-.02em;text-align:right}
  .inv-title small{display:block;font-family:'Inter',sans-serif;font-weight:400;font-size:12px;color:var(--muted);letter-spacing:0}
  .inv-meta{display:flex;justify-content:space-between;gap:20px;margin-bottom:28px;font-size:13px}
  .inv-meta .blk .h{font-family:'Archivo',sans-serif;font-weight:600;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}
  .inv-meta .blk .v{white-space:pre-line}
  table.items{width:100%;border-collapse:collapse;margin-bottom:20px}
  table.items th{text-align:left;font-family:'Archivo',sans-serif;font-weight:600;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:2px solid var(--ink);padding:8px 6px}
  table.items td{padding:9px 6px;border-bottom:1px solid var(--line);vertical-align:top}
  table.items td.r,table.items th.r{text-align:right}
  .totals{margin-left:auto;width:240px;font-size:14px}
  .totals .l{display:flex;justify-content:space-between;padding:6px 0}
  .totals .grand{display:flex;justify-content:space-between;border-top:2px solid var(--ink);margin-top:6px;padding-top:10px;font-family:'Archivo',sans-serif;font-weight:600;font-size:18px}
  .inv-notes{margin-top:26px;font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;white-space:pre-line}
  @media(max-width:900px){.invoice-layout{grid-template-columns:1fr}.preview-wrap{position:static}}
  @media print{
    body *{visibility:hidden}
    .banner,header.nav,.thead,.form-card,footer,.cta-band,.faq,.answer{display:none!important}
    .preview-wrap,.preview-wrap *{visibility:visible}
    .preview-wrap{position:absolute;top:0;left:0;width:100%}
    .invoice{border:0;box-shadow:none;padding:0}
    main{padding:0}
    @page{margin:14mm}
  }
