/* ======================================================================
   强制执行申请书生成器 · 法槌沙漏执行风
   丹砂红 #DC2626 + 法槌金 #B45309 + 象牙白纸 #FDFBF5
   ====================================================================== */
.eab{
  --dan:#DC2626; --dan-soft:#FEE2E2; --dan-deep:#991B1B;
  --gold:#B45309; --gold-soft:#FEF3C7; --gold-deep:#78350F;
  --ivory:#FDFBF5; --ivory-2:#F5F1E8;
  --ink:#1F1A14; --ink-sub:#6B5D4F; --ink-faint:#A89882;
  --line:#E8E0D0; --line-2:#F0EADB;
  --ok:#16A34A; --ok-soft:#DCFCE7;
  --warn:#EA580C; --warn-soft:#FFF7ED;
  --danger:#DC2626; --danger-soft:#FEE2E2;
  --r:12px;
  --shadow:0 1px 3px rgba(31,26,20,.08),0 12px 30px rgba(31,26,20,.10);
  --shadow-lg:0 2px 4px rgba(31,26,20,.10),0 20px 50px rgba(31,26,20,.15);
  color:var(--ink);
  font-family:-apple-system,"PingFang SC","HarmonyOS Sans SC","Microsoft YaHei",system-ui,sans-serif;
  font-size:14px; line-height:1.8;
  background:
    radial-gradient(720px 340px at 10% -120px, rgba(220,38,38,.06), transparent 60%),
    radial-gradient(520px 320px at 110% 20%, rgba(180,83,9,.07), transparent 60%),
    linear-gradient(180deg, var(--ivory) 0%, var(--ivory-2) 100%);
  padding:0 16px 56px;
}
:root[data-theme="dark"] .eab{
  --dan:#EF4444; --dan-soft:rgba(239,68,68,.15); --dan-deep:#B91C1C;
  --gold:#F59E0B; --gold-soft:rgba(245,158,11,.15); --gold-deep:#B45309;
  --ivory:#1A1410; --ivory-2:#110C08;
  --ink:#F5EFE6; --ink-sub:#B8A98E; --ink-faint:#7C6E5C;
  --line:#3A2F24; --line-2:#2A2218;
  --ok:#22C55E; --ok-soft:rgba(34,197,94,.15);
  --warn:#F97316; --warn-soft:rgba(249,115,22,.15);
  --danger:#EF4444; --danger-soft:rgba(239,68,68,.15);
  --shadow:0 1px 3px rgba(0,0,0,.4),0 12px 30px rgba(0,0,0,.45);
  --shadow-lg:0 2px 4px rgba(0,0,0,.5),0 20px 50px rgba(0,0,0,.6);
  background:
    radial-gradient(720px 340px at 10% -120px, rgba(239,68,68,.10), transparent 60%),
    radial-gradient(520px 320px at 110% 20%, rgba(245,158,11,.12), transparent 60%),
    linear-gradient(180deg, #1A1410 0%, #0E0906 100%);
}
.eab *{box-sizing:border-box;}
.eab-wrap{max-width:1100px;margin:0 auto;}

/* ---------- Hero ---------- */
.eab-hero{margin-top:22px;background:linear-gradient(135deg,var(--dan) 0%,var(--dan-deep) 100%);color:#fff;border-radius:var(--r);padding:28px 30px;box-shadow:var(--shadow-lg);position:relative;overflow:hidden;}
.eab-hero::before{content:"⚖️";position:absolute;right:-20px;top:-30px;font-size:200px;opacity:.08;}
.eab-hero::after{content:"";position:absolute;bottom:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--gold),transparent 80%);}
:root[data-theme="dark"] .eab-hero{background:linear-gradient(135deg,#B91C1C 0%,#7F1D1D 100%);}
.eab-hero-badge{display:inline-block;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);border-radius:99px;padding:3px 14px;font-size:12px;font-weight:700;margin-bottom:10px;backdrop-filter:blur(4px);}
.eab-hero h1{margin:0 0 8px;font-size:clamp(24px,4vw,32px);font-weight:800;letter-spacing:.5px;}
.eab-hero p{margin:0;color:rgba(255,255,255,.9);font-size:14px;max-width:780px;position:relative;z-index:1;}
.eab-hero p b{color:#FEE2E2;font-weight:700;}
.eab-hero-points{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;position:relative;z-index:1;}
.eab-hero-points span{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);border-radius:99px;padding:4px 14px;font-size:12.5px;font-weight:600;backdrop-filter:blur(4px);}

/* ---------- Card ---------- */
.eab-card{margin-top:18px;background:var(--ivory);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:22px 26px;position:relative;}
.eab-card-hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px dashed var(--line);}
.eab-card-hd h2{margin:0;font-size:17px;font-weight:800;color:var(--ink);}
.eab-tag{display:inline-block;background:var(--gold-soft);color:var(--gold-deep);border-radius:6px;padding:2px 10px;font-size:12px;font-weight:700;}
.eab-required{color:var(--ink-faint);font-size:12px;font-weight:600;}

/* ---------- Form ---------- */
.eab-form-row{margin-bottom:16px;}
.eab-label{display:block;font-weight:700;margin-bottom:6px;color:var(--ink);font-size:13.5px;}
.eab-req{color:var(--dan);font-weight:800;}
.eab-input{width:100%;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:14px;font-family:inherit;transition:border-color .15s,box-shadow .15s;}
:root[data-theme="dark"] .eab-input{background:#0E0906;border-color:var(--line);color:var(--ink);}
.eab-input:focus{outline:none;border-color:var(--dan);box-shadow:0 0 0 3px rgba(220,38,38,.12);}
.eab-input-sm{width:auto;min-width:120px;}
.eab-select{cursor:pointer;}
.eab-hint{color:var(--ink-faint);font-size:12px;margin-top:4px;}
.eab-hint-inline{color:var(--ink-faint);font-size:12px;margin-left:8px;white-space:nowrap;align-self:center;}
.eab-flex{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;}
.eab-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;}
.eab-col-full{grid-column:1 / -1;}
.eab-sub-hd{margin:22px 0 12px;padding-top:10px;border-top:1px solid var(--line);font-size:15px;font-weight:800;color:var(--gold-deep);}

/* ---------- Chips ---------- */
.eab-chips{display:flex;flex-wrap:wrap;gap:8px;}
.eab-chip{border:1.5px solid var(--line);background:#fff;border-radius:8px;padding:8px 18px;font-size:13.5px;font-weight:700;cursor:pointer;color:var(--ink-sub);transition:all .14s;user-select:none;}
:root[data-theme="dark"] .eab-chip{background:#0E0906;}
.eab-chip:hover{border-color:var(--gold);color:var(--gold-deep);}
.eab-chip.on{background:var(--dan);border-color:var(--dan);color:#fff;box-shadow:0 2px 8px rgba(220,38,38,.25);}
:root[data-theme="dark"] .eab-chip.on{background:var(--dan);color:#fff;}
.eab-chip-check{cursor:pointer;position:relative;display:inline-flex;align-items:center;}
.eab-chip-check input{display:none;}
.eab-chip-check span{pointer-events:none;}
.eab-chip-check input:checked + span{color:#fff;}
.eab-chip-check:has(input:checked){background:var(--gold);border-color:var(--gold);color:#fff;box-shadow:0 2px 8px rgba(180,83,9,.25);}
.eab-chips-9{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:6px;}
.eab-chips-9 .eab-chip-check{justify-content:center;padding:10px 8px;}

/* ---------- Actions ---------- */
.eab-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;}
.eab-btn{border:none;border-radius:10px;padding:10px 22px;font-size:14px;font-weight:800;cursor:pointer;transition:all .14s;font-family:inherit;}
.eab-btn-primary{background:linear-gradient(135deg,var(--dan),var(--dan-deep));color:#fff;box-shadow:0 2px 10px rgba(220,38,38,.3);}
.eab-btn-primary:hover{filter:brightness(1.08);transform:translateY(-1px);}
.eab-btn-ghost{background:var(--ivory-2);color:var(--ink);border:1px solid var(--line);}
.eab-btn-ghost:hover{border-color:var(--dan);color:var(--dan);}
.eab-actions-lg{margin-top:22px;padding-top:18px;border-top:1px dashed var(--line);}
.eab-msg{margin-top:10px;font-size:13px;min-height:20px;font-weight:700;}
.eab-msg.err{color:var(--dan);}
.eab-msg.ok{color:var(--ok);}

/* ---------- Timing Card ---------- */
.eab-timing-card{background:linear-gradient(180deg,var(--ivory) 0%,var(--gold-soft) 100%);border-left:4px solid var(--dan);}
:root[data-theme="dark"] .eab-timing-card{background:linear-gradient(180deg,#1A1410 0%,rgba(245,158,11,.08) 100%);}
.eab-timing-row{display:flex;gap:30px;align-items:center;flex-wrap:wrap;}
.eab-ring-wrap{position:relative;flex:0 0 auto;width:140px;height:140px;}
.eab-ring{width:100%;height:100%;transform:rotate(-90deg);}
.eab-ring-bg{fill:none;stroke:var(--line-2);stroke-width:10;}
.eab-ring-fg{fill:none;stroke:var(--dan);stroke-width:10;stroke-linecap:round;stroke-dasharray:314;stroke-dashoffset:314;transition:stroke-dashoffset 1s ease;}
:root[data-theme="dark"] .eab-ring-fg{stroke:var(--dan);}
.eab-ring-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;}
.eab-ring-num{font-size:48px;font-weight:800;color:var(--dan);line-height:1.1;}
.eab-ring-label{font-size:12px;color:var(--ink-faint);font-weight:600;margin-top:2px;}
.eab-timing-info{flex:1;min-width:200px;}
.eab-timing-line{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dashed var(--line);font-size:13.5px;}
.eab-timing-line:last-child{border-bottom:none;}
.eab-timing-line span{color:var(--ink-sub);}
.eab-timing-line b{color:var(--ink);font-weight:800;}
.eab-timing-status{margin-top:10px;padding:10px 16px;border-radius:8px;font-weight:800;font-size:14px;text-align:center;}
.eab-timing-status.safe{background:var(--ok-soft);color:var(--ok);}
.eab-timing-status.warn{background:var(--warn-soft);color:var(--warn);}
.eab-timing-status.danger{background:var(--danger-soft);color:var(--danger);}

/* ---------- Grid 2 ---------- */
.eab-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:0;}
@media(max-width:720px){.eab-grid-2{grid-template-columns:1fr;}.eab-form-grid{grid-template-columns:1fr;}.eab-chips-9{grid-template-columns:repeat(3,1fr);}}

/* ---------- Jurisdiction ---------- */
.eab-jurisdiction{padding:12px 16px;background:var(--gold-soft);border-radius:8px;border-left:3px solid var(--gold);font-weight:700;color:var(--gold-deep);}
:root[data-theme="dark"] .eab-jurisdiction{background:rgba(245,158,11,.12);color:#FBBF24;border-left-color:var(--gold);}

/* ---------- Interest ---------- */
.eab-interest-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.eab-interest-item{padding:14px;background:var(--ivory-2);border-radius:8px;border:1px solid var(--line);text-align:center;}
.eab-interest-label{display:block;color:var(--ink-sub);font-size:12px;margin-bottom:4px;}
.eab-interest-val{display:block;font-size:20px;font-weight:800;color:var(--ink);}
.eab-interest-total{grid-column:1 / -1;background:linear-gradient(135deg,var(--dan) 0%,var(--dan-deep) 100%);color:#fff;border:none;}
:root[data-theme="dark"] .eab-interest-total{background:linear-gradient(135deg,#B91C1C 0%,#7F1D1D 100%);}
.eab-interest-total .eab-interest-label{color:rgba(255,255,255,.8);}
.eab-interest-total .eab-interest-val{color:#fff;font-size:24px;}

/* ---------- Property List ---------- */
.eab-property-list{min-height:60px;}
.eab-property-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--ivory-2);border:1px solid var(--line);border-radius:8px;margin-bottom:8px;font-weight:600;}
.eab-property-item::before{content:"✓";color:var(--ok);font-weight:800;}
.eab-empty{color:var(--ink-faint);font-size:13px;padding:20px;text-align:center;background:var(--ivory-2);border:1px dashed var(--line);border-radius:8px;}

/* ---------- A4 Preview ---------- */
.eab-a4{background:#fff;border:1px solid var(--line);border-radius:8px;padding:40px;box-shadow:var(--shadow);}
:root[data-theme="dark"] .eab-a4{background:#0E0906;}
.eab-a4-content{font-size:14px;line-height:2;color:var(--ink);}
.eab-a4-content h3{text-align:center;font-size:20px;font-weight:800;margin:0 0 20px;color:var(--ink);letter-spacing:4px;}
.eab-a4-content .eab-section-title{font-weight:800;margin-top:16px;margin-bottom:6px;}
.eab-a4-content .eab-line{margin:2px 0;}
.eab-a4-content .eab-blank{display:inline-block;border-bottom:1px solid var(--ink);min-width:120px;padding:0 4px;}
.eab-a4-content .eab-footer{margin-top:40px;text-align:right;}
.eab-a4-content .eab-footer p{margin:2px 0;}
@media print{
  .eab-a4{box-shadow:none;border:none;padding:0;}
}

/* ---------- Materials ---------- */
.eab-materials{margin:0;padding-left:20px;}
.eab-materials li{padding:6px 0;color:var(--ink);font-size:14px;}
.eab-materials li b{color:var(--dan);}
