/* WP DàLiùRén Claude — Thème light technique */
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600&family=IBM+Plex+Mono:wght@400;500&family=Noto+Serif+SC:wght@400;600;700&display=swap');

.dlr-widget {
  --dlr-accent:#1e3a5f; --dlr-accent-l:color-mix(in srgb,var(--dlr-accent) 10%,#fff);
  --dlr-accent-m:color-mix(in srgb,var(--dlr-accent) 20%,#fff);
  --dlr-bg:#ffffff; --dlr-bg2:#f8f9fa; --dlr-bg3:#f1f3f5;
  --dlr-border:#dee2e6; --dlr-border2:#ced4da;
  --dlr-text:#212529; --dlr-text2:#495057; --dlr-text3:#868e96;
  --dlr-red:#c92a2a; --dlr-green:#2f9e44; --dlr-gold:#b45309;
  --dlr-font-ui:'IBM Plex Sans',system-ui,sans-serif;
  --dlr-font-mono:'IBM Plex Mono',monospace;
  --dlr-font-zh:'Noto Serif SC',serif;
  --dlr-max-width:1100px; --dlr-radius:2px;
  font-family:var(--dlr-font-ui); font-size:15px; color:var(--dlr-text);
  background:var(--dlr-bg); max-width:var(--dlr-max-width);
  margin:1.5rem auto; border:1px solid var(--dlr-border); border-radius:var(--dlr-radius);
}
.dlr-header { display:flex; align-items:center; justify-content:space-between; padding:.65rem 1.25rem; background:var(--dlr-bg2); border-bottom:1px solid var(--dlr-border); }
.dlr-header-left { display:flex; align-items:baseline; gap:.5rem; }
.dlr-title-zh { font-family:var(--dlr-font-zh); font-size:1.3rem; font-weight:700; color:var(--dlr-accent); letter-spacing:.05em; }
.dlr-title-sep { color:var(--dlr-text3); }
.dlr-title-fr  { font-size:.78rem; font-weight:500; color:var(--dlr-text2); }
.dlr-script-toggle { display:flex; border:1px solid var(--dlr-border2); border-radius:var(--dlr-radius); overflow:hidden; }
.dlr-script-btn { padding:.2rem .6rem; font-family:var(--dlr-font-zh); font-size:.85rem; background:var(--dlr-bg); border:none; cursor:pointer; color:var(--dlr-text2); transition:background .15s,color .15s; }
.dlr-script-btn+.dlr-script-btn { border-left:1px solid var(--dlr-border2); }
.dlr-script-btn.active { background:var(--dlr-accent); color:#fff; font-weight:600; }
.dlr-form { padding:1rem 1.25rem; display:flex; flex-direction:column; gap:.85rem; border-bottom:1px solid var(--dlr-border); }
.dlr-form-row--2 { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.dlr-field { display:flex; flex-direction:column; gap:.3rem; }
.dlr-label { font-size:.68rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--dlr-text3); }
.dlr-input { font-family:var(--dlr-font-ui); font-size:.85rem; color:var(--dlr-text); background:var(--dlr-bg); border:1px solid var(--dlr-border2); border-radius:var(--dlr-radius); padding:.4rem .65rem; outline:none; width:100%; box-sizing:border-box; transition:border-color .15s,box-shadow .15s; }
.dlr-input:focus { border-color:var(--dlr-accent); box-shadow:0 0 0 3px var(--dlr-accent-l); }
.dlr-seg { display:inline-flex; border:1px solid var(--dlr-border2); border-radius:var(--dlr-radius); overflow:hidden; width:100%; }
.dlr-seg-btn { flex:1; display:flex; flex-direction:column; align-items:center; gap:.08rem; padding:.4rem .3rem; background:var(--dlr-bg); border:none; border-right:1px solid var(--dlr-border2); cursor:pointer; transition:background .15s; text-align:center; line-height:1.2; }
.dlr-seg-btn:last-child { border-right:none; }
.dlr-seg-btn.active { background:var(--dlr-accent); }
.dlr-seg-btn.active .dlr-seg-main,.dlr-seg-btn.active .dlr-seg-sub { color:#fff; }
.dlr-seg-btn.active .dlr-seg-sub { opacity:.75; }
.dlr-seg-btn:not(.active):hover { background:var(--dlr-bg3); }
.dlr-seg-main { font-size:.85rem; font-weight:600; color:var(--dlr-text); }
.dlr-seg-sub  { font-size:.72rem; color:var(--dlr-text3); }
.dlr-seg--sm .dlr-seg-btn--zh { font-family:var(--dlr-font-zh); font-size:1.1rem; padding:.35rem .3rem; min-width:2rem; flex:0 0 auto; }
.dlr-seg--sm { flex-wrap:wrap; height:auto; }
.dlr-geocode-wrap { position:relative; }
.dlr-city-search  { padding-right:2rem !important; }
.dlr-spinner      { position:absolute; right:.6rem; top:50%; transform:translateY(-50%); color:var(--dlr-accent); animation:dlr-spin .7s linear infinite; }
@keyframes dlr-spin{to{transform:translateY(-50%) rotate(360deg);}}
.dlr-suggestions { position:absolute; top:calc(100% + 3px); left:0; right:0; z-index:9999; background:var(--dlr-bg); border:1px solid var(--dlr-border2); border-radius:var(--dlr-radius); box-shadow:0 4px 16px rgba(0,0,0,.1); list-style:none; margin:0; padding:0; max-height:200px; overflow-y:auto; }
.dlr-suggestions li { padding:.4rem .7rem; cursor:pointer; border-bottom:1px solid var(--dlr-border); display:flex; flex-direction:column; gap:.1rem; font-size:.8rem; transition:background .1s; }
.dlr-suggestions li:hover,.dlr-suggestions li.active { background:var(--dlr-accent-l); }
.dlr-sugg-name   { font-weight:600; }
.dlr-sugg-detail { font-size:.7rem; color:var(--dlr-text2); }
.dlr-sugg-coords { font-size:.65rem; color:var(--dlr-text3); font-family:var(--dlr-font-mono); }
.dlr-selected-city { display:flex; align-items:center; justify-content:space-between; padding:.3rem .6rem; background:var(--dlr-accent-l); border:1px solid color-mix(in srgb,var(--dlr-accent) 30%,transparent); border-radius:var(--dlr-radius); font-size:.8rem; font-weight:500; margin-top:.3rem; }
.dlr-clear-city { background:none; border:none; cursor:pointer; color:var(--dlr-text3); }
.dlr-clear-city:hover { color:var(--dlr-red); }
.dlr-coords { display:flex; gap:.6rem; margin-top:.35rem; align-items:center; font-size:.75rem; flex-wrap:wrap; }
.dlr-coords em { font-style:normal; font-weight:600; font-family:var(--dlr-font-mono); color:var(--dlr-text3); text-transform:uppercase; margin-right:.2rem; font-size:.65rem; }
.dlr-coord-input { width:80px; font-family:var(--dlr-font-mono); font-size:.72rem; padding:.2rem .3rem; border:1px solid var(--dlr-border2); border-radius:var(--dlr-radius); background:var(--dlr-bg); }
.dlr-tz-display { font-family:var(--dlr-font-mono); font-size:.7rem; color:var(--dlr-accent); font-weight:500; }
.dlr-btn-calc { align-self:flex-start; padding:.5rem 1.4rem; background:var(--dlr-accent); color:#fff; border:none; border-radius:var(--dlr-radius); font-family:var(--dlr-font-ui); font-size:.85rem; font-weight:600; letter-spacing:.03em; cursor:pointer; transition:opacity .15s,transform .1s; }
.dlr-btn-calc:hover { opacity:.88; }
.dlr-btn-calc:active { transform:translateY(1px); }
.dlr-btn-calc:disabled { opacity:.5; cursor:wait; }
.dlr-section { border-bottom:1px solid var(--dlr-border); }
.dlr-section:last-child { border-bottom:none; }
.dlr-section-head { display:flex; align-items:center; gap:.6rem; padding:.55rem 1.25rem; background:var(--dlr-bg2); border-bottom:1px solid var(--dlr-border); }
.dlr-section-head.dlr-collapsible { cursor:pointer; user-select:none; }
.dlr-section-head.dlr-collapsible:hover { background:var(--dlr-bg3); }
.dlr-section-zh    { font-family:var(--dlr-font-zh); font-size:1.15rem; font-weight:700; color:var(--dlr-accent); }
.dlr-section-label { font-size:.8rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--dlr-text2); flex:1; }
.dlr-section-meta  { font-size:.7rem; color:var(--dlr-text3); font-family:var(--dlr-font-mono); }
.dlr-toggle-icon   { font-size:.72rem; color:var(--dlr-text3); transition:transform .25s; }
.dlr-section-head.collapsed .dlr-toggle-icon { transform:rotate(-90deg); }
.dlr-riji { display:flex; flex-wrap:wrap; gap:0; padding:.65rem 1.25rem; }
.dlr-riji-item { display:flex; flex-direction:column; gap:.12rem; padding:.25rem 1rem .25rem 0; border-right:1px solid var(--dlr-border); margin-right:1rem; }
.dlr-riji-item:last-child { border-right:none; }
.dlr-riji-label { font-size:.6rem; font-weight:600; text-transform:uppercase; letter-spacing:.07em; color:var(--dlr-text3); }
.dlr-riji-value { font-size:.9rem; font-weight:600; color:var(--dlr-text); }
.dlr-riji-zh    { font-family:var(--dlr-font-zh); font-size:1.3rem; color:var(--dlr-accent); }
.dlr-pan-table,.dlr-ke-table { overflow-x:auto; }
.dlr-pan-table table,.dlr-ke-table table,.dlr-sc-table table { width:100%; border-collapse:collapse; font-size:.77rem; }
.dlr-pan-table th,.dlr-ke-table th,.dlr-sc-table th { padding:.4rem .6rem; background:var(--dlr-bg3); border-bottom:2px solid var(--dlr-border2); text-align:center; font-size:.72rem; font-weight:600; letter-spacing:.04em; text-transform:uppercase; color:var(--dlr-text2); white-space:nowrap; }
.dlr-pan-table td,.dlr-ke-table td,.dlr-sc-table td { padding:.55rem .75rem; border-bottom:1px solid var(--dlr-border); text-align:center; vertical-align:middle; }
.dlr-sc-table th,.dlr-sc-table td { text-align:left; }
.dlr-pan-table tr:last-child td,.dlr-ke-table tr:last-child td,.dlr-sc-table tr:last-child td { border-bottom:none; }
.dlr-pan-table tr:hover td,.dlr-ke-table tr:hover td,.dlr-sc-table tr:hover td { background:var(--dlr-accent-l); }
.dlr-zh-cell  { font-family:var(--dlr-font-zh); font-size:1.4rem; font-weight:700; }
.dlr-pin-cell { font-family:var(--dlr-font-mono); font-size:.72rem; color:var(--dlr-text3); }
.dlr-gen-cell { font-family:var(--dlr-font-zh); font-size:1.1rem; }
.dlr-kw       { color:var(--dlr-red); font-weight:700; font-size:.75rem; }
.dlr-state    { font-family:var(--dlr-font-zh); font-size:.95rem; font-weight:600; }
.dlr-state-wang{color:var(--dlr-red);} .dlr-state-xiang{color:var(--dlr-green);}
.dlr-state-xiu{color:var(--dlr-text2);} .dlr-state-qiu{color:var(--dlr-text3);}
.dlr-state-si{color:var(--dlr-border2);}
.dlr-rel-tags { display:flex; flex-wrap:wrap; gap:.15rem; justify-content:center; }
.dlr-rel-tag  { font-size:.68rem; padding:.06rem .3rem; border-radius:2px; white-space:nowrap; }
.dlr-rel-liuhe{background:#e3f2fd;color:#1565c0;} .dlr-rel-chong{background:#fce4ec;color:#c62828;}
.dlr-rel-liuhai{background:#fff3e0;color:#e65100;} .dlr-rel-xing{background:#f3e5f5;color:#6a1b9a;}
.dlr-rel-po{background:#efebe9;color:#4e342e;} .dlr-rel-sheng{background:#e8f5e9;color:#1b5e20;}
.dlr-rel-ke{background:#fff8e1;color:#f57f17;} .dlr-rel-bi{background:#f1f8e9;color:#33691e;}
.dlr-rel-sanhe{background:#e0f7fa;color:#006064;} .dlr-rel-xie{background:#fafafa;color:#555;}
.dlr-rel-shouke{background:#fff0f0;color:#b00;}
.dlr-ke-active{font-weight:700;color:var(--dlr-red);} .dlr-ke-inactive{color:var(--dlr-text3);}
.dlr-ke-dir{font-family:var(--dlr-font-zh);font-size:.82rem;font-weight:600;}
.dlr-fayong-badge { display:inline-flex; gap:.35rem; align-items:center; background:var(--dlr-accent); color:#fff; padding:.18rem .55rem; border-radius:var(--dlr-radius); font-size:.7rem; font-weight:600; }
.dlr-fayong-badge .dlr-zh { font-family:var(--dlr-font-zh); font-size:1.05rem; }
.dlr-fayong-reason { padding:.5rem 1.25rem; font-size:.85rem; color:var(--dlr-text2); background:var(--dlr-bg2); border-top:1px dashed var(--dlr-border); font-style:italic; }
.dlr-sc-name { font-family:var(--dlr-font-zh); font-size:1.2rem; font-weight:700; color:var(--dlr-accent); }
.dlr-sc-pin  { font-size:.75rem; color:var(--dlr-text3); display:block; }
.dlr-sc-role { font-size:.75rem; font-style:italic; color:var(--dlr-text3); display:block; }
.dlr-sc-zhi  { font-family:var(--dlr-font-zh); font-size:1.8rem; font-weight:700; }
.dlr-sc-gen  { font-family:var(--dlr-font-zh); font-size:1.1rem; }
.dlr-sc-flow { display:flex; align-items:center; gap:.45rem; padding:.5rem 1.25rem; font-size:.75rem; border-top:1px dashed var(--dlr-border); flex-wrap:wrap; }
.dlr-flow-arrow { color:var(--dlr-text3); }
.dlr-flow-rel { font-size:.68rem; background:var(--dlr-bg3); padding:.08rem .28rem; border-radius:2px; color:var(--dlr-text2); }
.dlr-matrix { overflow:hidden; transition:max-height .35s ease,opacity .25s; max-height:1200px; opacity:1; }
.dlr-matrix.collapsed { max-height:0; opacity:0; }
.dlr-matrix-wrap { overflow-x:auto; padding:.5rem 1.25rem; }
.dlr-matrix table { border-collapse:collapse; font-size:.68rem; }
.dlr-matrix th,.dlr-matrix td { padding:.28rem .38rem; border:1px solid var(--dlr-border); text-align:center; min-width:2.2rem; }
.dlr-matrix th { background:var(--dlr-bg3); font-family:var(--dlr-font-zh); font-size:.85rem; font-weight:700; }
.dlr-matrix-cell--empty { color:var(--dlr-border2); }
.dlr-consultant-table { padding:.65rem 1.25rem; display:flex; flex-direction:column; gap:.65rem; }
.dlr-cons-block { border:1px solid var(--dlr-border); border-radius:var(--dlr-radius); overflow:hidden; }
.dlr-cons-head  { padding:.35rem .7rem; background:var(--dlr-bg3); font-size:.68rem; font-weight:600; text-transform:uppercase; letter-spacing:.07em; color:var(--dlr-text2); border-bottom:1px solid var(--dlr-border); display:flex; gap:.5rem; align-items:center; }
.dlr-cons-head .dlr-zh { font-family:var(--dlr-font-zh); font-size:.95rem; color:var(--dlr-accent); }
.dlr-cons-body  { padding:.45rem .7rem; display:flex; flex-wrap:wrap; gap:.85rem; font-size:.75rem; }
.dlr-cons-item  { display:flex; flex-direction:column; gap:.12rem; }
.dlr-cons-label { font-size:.6rem; font-weight:600; text-transform:uppercase; letter-spacing:.07em; color:var(--dlr-text3); }
.dlr-cons-value { font-weight:600; color:var(--dlr-text); font-size:.88rem; }
.dlr-cons-zh    { font-family:var(--dlr-font-zh); font-size:1.4rem; color:var(--dlr-accent); }
.dlr-error { margin:.65rem 1.25rem; padding:.5rem .8rem; background:#fff5f5; border:1px solid #ffc9c9; border-radius:var(--dlr-radius); color:var(--dlr-red); font-size:.78rem; }
@keyframes dlr-fadein{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.dlr-results { animation:dlr-fadein .3s ease; }
.dlr-wood{color:#2f9e44;} .dlr-fire{color:#e03131;} .dlr-earth{color:#d4a017;}
.dlr-metal{color:#495057;} .dlr-water{color:#1971c2;}
@media(max-width:640px){
  .dlr-form-row--2{grid-template-columns:1fr;}
  .dlr-pan-table td,.dlr-pan-table th{padding:.25rem .25rem;font-size:.68rem;}
}
