.wrap{max-width:960px;margin:0 auto;padding:28px 0}
    .back{color:#6b7280;text-decoration:none;font-size:14px}
    h1{margin:20px 0 8px;font-size:30px}
    .sub{color:#6b7280;margin-bottom:18px;line-height:1.8}
    .card{
      background:#fff;
      border-radius:18px;
      padding:22px;
      box-shadow:0 8px 24px rgba(0,0,0,.08);
    }
    label{display:block;margin:0 0 8px;color:#6b7280;font-size:14px}
    input{
      width:100%;
      height:46px;
      border:1px solid #d9dce6;
      border-radius:12px;
      padding:0 12px;
      font-size:15px;
      background:#fff;
      color:inherit;
    }
    .grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    @media(max-width:720px){.grid{grid-template-columns:1fr}}
    .field{margin-bottom:14px}
    .btns{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
    button{
      border:0;
      border-radius:12px;
      padding:12px 16px;
      cursor:pointer;
      font-size:14px;
    }
    .primary{background:#3b5bff;color:#fff}
    .ghost{background:#eef1ff;color:inherit}
    .danger{background:#ffecec;color:#7f1d1d}
    .people{
      margin-top:18px;
      border:1px solid #e5e7eb;
      border-radius:16px;
      overflow:hidden;
      background:#fafafa;
    }
    .people-head,.person-row{
      display:grid;
      grid-template-columns:70px 1fr 1fr;
      gap:12px;
      align-items:center;
      padding:12px 14px;
    }
    .people-head{
      color:#6b7280;
      font-size:13px;
      background:#f3f4f6;
      font-weight:700;
    }
    .person-row{
      border-top:1px solid #e5e7eb;
      background:#fff;
    }
    .person-row .index{
      color:#6b7280;
      font-weight:700;
    }
    @media(max-width:640px){
      .people-head{display:none}
      .person-row{
        grid-template-columns:1fr;
        gap:8px;
      }
      .person-row .index::after{content:""}
    }
    .result{
      margin-top:20px;
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:12px;
    }
    @media(max-width:760px){.result{grid-template-columns:1fr}}
    .item{
      border:1px solid #e5e7eb;
      border-radius:16px;
      padding:15px;
      background:#fafafa;
    }
    .label{font-size:13px;color:#6b7280;margin-bottom:6px}
    .value{font-size:20px;font-weight:700;line-height:1.5}
    .table-wrap{
      margin-top:16px;
      overflow:auto;
      border:1px solid #e5e7eb;
      border-radius:16px;
      background:#fff;
    }
    table{
      width:100%;
      border-collapse:collapse;
      min-width:620px;
    }
    th,td{
      padding:12px 14px;
      border-bottom:1px solid #e5e7eb;
      text-align:left;
      font-size:14px;
      white-space:nowrap;
    }
    th{
      color:#6b7280;
      background:#f8fafc;
      font-weight:700;
    }
    tr:last-child td{border-bottom:0}
    .pay{color:#dc2626;font-weight:700}
    .receive{color:#16a34a;font-weight:700}
    .even{color:#6b7280;font-weight:700}
    .settle{
      margin-top:16px;
      padding:16px;
      border:1px solid #e5e7eb;
      border-radius:16px;
      background:#fafafa;
      line-height:1.9;
    }
    .settle h2{
      margin:0 0 8px;
      font-size:18px;
    }
    .settle ol{
      margin:8px 0 0;
      padding-left:22px;
    }
    .warn{
      margin-top:14px;
      padding:12px 14px;
      border-radius:14px;
      background:#fff7ed;
      color:#9a3412;
      border:1px solid #fed7aa;
      line-height:1.7;
      font-size:13px;
    }
    .note{
      margin-top:16px;
      padding:14px 16px;
      border:1px solid #e5e7eb;
      border-radius:14px;
      color:#6b7280;
      font-size:13px;
      line-height:1.8;
      background:#fafafa;
    }
    .hide{display:none}
    footer{
      margin-top:34px;
      color:#9ca3af;
      font-size:13px;
      line-height:1.8;
      text-align:center;
    }
    footer a{color:inherit;text-decoration:none}
