
    :root{--navy:#0b2545;--blue:#2e74b5;--deep:#1f4d78;--red:#9b1c1c;--green:#2f6b4f;--gold:#8a6410;--ink:#1f2933;--muted:#667684;--line:#d9e2ec;--bg:#f4f7fa;--panel:#fff;--pale-blue:#eaf3fa;--pale-red:#fcecec;--pale-green:#ebf5ee;--pale-gold:#fff5d9;--shadow:0 12px 32px rgba(11,37,69,.09)}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Microsoft JhengHei","Noto Sans TC",Arial,sans-serif;line-height:1.65}
    button,input,select{font:inherit}button{cursor:pointer}.shell{max-width:1220px;margin:auto;padding:0 22px}
    header{background:linear-gradient(135deg,var(--navy),#153e66);color:#fff;padding:22px 0 20px;border-bottom:4px solid #d5a329}.brand{display:flex;gap:18px;align-items:center;justify-content:space-between}.brand h1{font-size:clamp(1.45rem,3vw,2.25rem);line-height:1.22;margin:0}.brand p{margin:5px 0 0;color:#dbe7f2}.seal{flex:0 0 auto;border:1px solid rgba(255,255,255,.4);border-radius:999px;padding:8px 13px;font-weight:700;font-size:.88rem}
    .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:-1px;padding:17px 0}.stat{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:12px 15px;box-shadow:var(--shadow)}.stat strong{display:block;color:var(--navy);font-size:1.3rem}.stat span{color:var(--muted);font-size:.82rem}
    .controls{position:sticky;top:0;z-index:20;background:rgba(244,247,250,.96);backdrop-filter:blur(12px);border-block:1px solid var(--line);padding:13px 0}.control-grid{display:grid;grid-template-columns:minmax(250px,2fr) repeat(4,minmax(132px,1fr)) auto;gap:10px}.field{display:flex;flex-direction:column;gap:4px}.field label{font-size:.76rem;color:var(--muted);font-weight:700}.field input,.field select{height:43px;border:1px solid #b9c7d4;border-radius:10px;background:#fff;padding:0 12px;color:var(--ink);outline:none}.field input:focus,.field select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(46,116,181,.16)}
    .presets{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:11px}.presets strong{font-size:.78rem;color:var(--navy);margin-right:2px}.preset{border:1px solid #c7d4df;background:#fff;color:var(--deep);border-radius:999px;padding:5px 10px;font-size:.76rem;font-weight:700}.preset:hover,.preset.active{background:var(--navy);border-color:var(--navy);color:#fff}
    .btn{border:1px solid #b7c5d2;border-radius:10px;background:#fff;color:var(--navy);font-weight:700;padding:9px 13px}.btn:hover{background:#edf4fa}.btn.primary{background:var(--blue);color:#fff;border-color:var(--blue)}.btn.primary:hover{background:#245f95}.actions{display:flex;gap:8px;align-items:end}
    .resultbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 0 10px}.resultbar h2{font-size:1.05rem;margin:0;color:var(--navy)}.resultbar .tools{display:flex;gap:8px;flex-wrap:wrap}.hint{color:var(--muted);font-size:.82rem}
    .case-list{display:grid;gap:13px;padding-bottom:20px}.case{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 4px 16px rgba(11,37,69,.05);overflow:hidden}.case[open]{box-shadow:var(--shadow)}.case summary{list-style:none;display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 18px;cursor:pointer}.case summary::-webkit-details-marker{display:none}.case summary:hover{background:#f9fbfd}.id{color:var(--blue);font-weight:800;font-variant-numeric:tabular-nums}.title{font-weight:800;color:var(--navy);line-height:1.4}.badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.badge{font-size:.72rem;font-weight:700;padding:3px 8px;border-radius:999px;background:#e8eef5;color:var(--deep);white-space:nowrap}.badge.risk-high{background:#f8d8d8;color:#861818}.badge.risk-low{background:#e4f2e8;color:#286045}.badge.variant{background:#fff0c7;color:#785300}
    .case-body{padding:0 18px 18px;border-top:1px solid #edf1f4}.scenario{margin:14px 0 9px;padding:11px 13px;border-left:4px solid #788897;background:#f3f5f7;border-radius:8px}.plain{margin:0 0 12px;padding:12px 14px;border-left:4px solid #d5a329;background:var(--pale-gold);border-radius:8px}.plain strong{color:#6f4c00}.perspectives{display:grid;grid-template-columns:1fr 1fr;gap:12px}.perspective{padding:13px 14px;border-radius:10px}.perspective h3{font-size:.88rem;margin:0 0 5px}.perspective p{margin:0;font-size:.92rem}.landlord{background:var(--pale-red);border-left:4px solid var(--red)}.landlord h3{color:var(--red)}.tenant{background:var(--pale-blue);border-left:4px solid var(--blue)}.tenant h3{color:var(--blue)}
    .detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.detail{border:1px solid var(--line);border-radius:10px;padding:11px 12px;background:#fff}.detail h3{font-size:.8rem;letter-spacing:.03em;margin:0 0 4px;color:var(--deep)}.detail p{font-size:.88rem;margin:0}.detail.solution{background:var(--pale-green)}.detail.evidence{background:var(--pale-gold)}.case-footer{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:12px;padding-top:10px;border-top:1px dashed var(--line)}.basis{font-size:.78rem;color:var(--muted)}.copy{border:0;background:none;color:var(--blue);font-weight:700;padding:5px}
    .empty{background:#fff;border:1px dashed #9fb0bf;border-radius:16px;padding:44px;text-align:center;color:var(--muted)}.pagination{display:flex;justify-content:center;align-items:center;gap:10px;padding:10px 0 34px}.page-info{font-weight:700;color:var(--navy);min-width:110px;text-align:center}
    .notice{margin:0 0 26px;background:#fff8e6;border-left:5px solid #d5a329;border-radius:10px;padding:12px 15px;color:#5f4708;font-size:.86rem}.top{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;border-radius:50%;background:var(--navy);color:#fff;box-shadow:var(--shadow);display:none}.top.show{display:block}
    footer{border-top:1px solid var(--line);padding:22px 0 34px;color:var(--muted);font-size:.82rem}
    mark{background:#ffe184;color:inherit;border-radius:3px;padding:0 1px}
    @media(max-width:920px){.control-grid{grid-template-columns:1fr 1fr}.field.search{grid-column:1/-1}.actions{align-items:center}.stats{grid-template-columns:repeat(2,1fr)}.case summary{grid-template-columns:64px 1fr}.badges{grid-column:2;justify-content:flex-start}.detail-grid{grid-template-columns:1fr}}
    @media(max-width:640px){.shell{padding:0 14px}.brand{align-items:flex-start}.seal{display:none}.control-grid{grid-template-columns:1fr}.field.search{grid-column:auto}.controls{position:static}.perspectives{grid-template-columns:1fr}.case summary{padding:14px;gap:8px}.case-body{padding:0 14px 15px}.resultbar{align-items:flex-start;flex-direction:column}.actions{flex-wrap:wrap}.stats{gap:8px}.stat{padding:10px 12px}}
    @media print{header,.stats,.controls,.resultbar .tools,.pagination,.top,footer{display:none!important}body{background:#fff}.shell{max-width:none;padding:0}.case-list{display:block}.case{box-shadow:none;break-inside:avoid;margin-bottom:10px}.case summary{padding:8px}.case-body{display:block!important;padding:0 10px 10px}.case:not([open]) .case-body{display:block}.notice{font-size:9pt}}
  

.rd-notice{max-width:1220px;margin:16px auto 0;padding:14px 18px;border-radius:10px;
  background:#fff8e6;border:1px solid #e6cf8a;border-left:5px solid #b8860b;
  color:#4a3b12;font-size:14.5px;line-height:1.75}
.rd-notice b{color:#8a6410}
.rd-notice ul{margin:8px 0 0;padding-left:20px}
.rd-notice li{margin:3px 0}
.rd-foot{max-width:1220px;margin:28px auto;padding:16px 18px;border-top:1px solid #d9e2ec;
  color:#667684;font-size:13px;line-height:1.7}
@media(max-width:640px){.rd-notice{margin:12px 14px 0;font-size:13.5px}}


  .citewarn{margin:0 0 12px;padding:11px 14px;border:1px solid #e3c98f;
    border-left:5px solid #c98a12;border-radius:8px;background:#fffaf0;
    color:#7a5a12;line-height:1.7;font-size:13.5px}
  

.crumb{font-size:13px;color:#5a6b82;margin:0 0 10px}
.crumb a{color:#2e74b5;text-decoration:none}
.crumb a:hover{text-decoration:underline}
.lede{font-size:17px;line-height:1.75;margin:0 0 14px}
.stagenav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 22px}
.stagenav a{display:inline-block;padding:6px 12px;border:1px solid #d6dfea;border-radius:999px;
  font-size:14px;color:#1f4d78;text-decoration:none;background:#fff}
.stagenav a:hover{background:#eef4fb;border-color:#2e74b5}
.stage{margin:0 0 34px;padding:0 0 6px;border-bottom:1px solid #e6ecf3}
.stage:last-child{border-bottom:0}
.stage>h2{font-size:20px;color:#0b2545;margin:0 0 4px}
.stage>.sub{font-size:13px;color:#5a6b82;margin:0 0 14px}
.related{margin:26px 0 0}
.related h2{font-size:17px;color:#0b2545;margin:0 0 10px}
.related ul{margin:0;padding-left:20px;line-height:2}
.related a{color:#2e74b5;text-decoration:none}
.related a:hover{text-decoration:underline}
.toolcta{margin:22px 0 0;padding:14px 16px;border:1px solid #d6dfea;border-radius:10px;background:#fff}
.toolcta a{color:#2e74b5;font-weight:600;text-decoration:none}
.idxgroup{margin:0 0 30px}
.idxgroup h2{font-size:19px;color:#0b2545;margin:0 0 4px}
.idxgroup .sub{font-size:13px;color:#5a6b82;margin:0 0 12px}
.idxcat{font-size:14px;font-weight:600;color:#1f4d78;margin:14px 0 6px}
.idxlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:6px 18px;
  margin:0;padding:0;list-style:none}
.idxlist a{color:#2e74b5;text-decoration:none;font-size:15px;line-height:1.9}
.idxlist a:hover{text-decoration:underline}
.basis a{color:#1f4d78;text-decoration:underline;text-underline-offset:2px}
.basis a:hover{color:#2e74b5}
.sources ul{list-style:none;padding:0}
.sources li{padding:5px 0;border-bottom:1px dotted #e6ecf3}
.sources li:last-child{border-bottom:0}
.sources .sub{margin:10px 0 0;font-size:13px;color:#5a6b82}
.unverified{color:#8a6d3b;font-size:13px}
.badref{color:#8a5a00;background:#fff4e0;border-bottom:1px dashed #d29a3a;
  padding:0 3px;border-radius:3px;cursor:help;font-weight:600}
.citewarn{margin:0 0 14px;padding:12px 15px;border:1px solid #e3c98f;
  border-left:5px solid #c98a12;border-radius:8px;background:#fffaf0;
  color:#7a5a12;line-height:1.7;font-size:14px}
.citewarn.page{max-width:1120px;margin:16px auto 0;font-size:14.5px;padding:14px 18px}
.draftwarn{max-width:1120px;margin:16px auto 0;padding:14px 18px;
  border:1px solid #e0b4b4;border-left:5px solid #9b1c1c;border-radius:8px;
  background:#fdf3f3;color:#7a1d1d;line-height:1.7;font-size:14.5px}
