.shi-search{margin:1.5rem 0 0}
.shi-search form{display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap;
  padding:0.875rem 1.25rem;border:1px solid var(--line);border-radius:999px;
  background:var(--surface);box-shadow:var(--shadow)}
.shi-search svg{flex:none;width:1.25rem;height:1.25rem;stroke:var(--teal-strong);
  stroke-width:2;fill:none;stroke-linecap:round}
.shi-search input{flex:1 1 14rem;min-width:0;border:0;outline:0;background:transparent;
  font:inherit;font-size:var(--fs-lead);color:var(--ink);padding:0.25rem 0}
.shi-search input::placeholder{color:#b7c3c6}
.shi-search form:focus-within{border-color:var(--teal);
  box-shadow:0 0 0 0.1875rem rgba(88,197,189,.18),var(--shadow)}
.shi-search .state{flex:none;color:var(--muted);font-size:var(--fs-small);white-space:nowrap}
.shi-hits{display:grid;gap:0.625rem;margin-top:1.25rem}
.shi-hit{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;
  padding:1.125rem 1.375rem;border:1px solid var(--line);border-radius:16px;
  background:var(--surface);text-decoration:none;color:inherit;cursor:pointer}
.shi-hit:hover{border-color:var(--teal);box-shadow:var(--shadow)}
.shi-hit b{font-family:"Noto Serif TC","Songti TC",serif;font-size:var(--fs-lead);font-weight:900}
.shi-hit .by{color:var(--muted);font-size:var(--fs-small);white-space:nowrap}
.shi-hit .pv{display:block;margin-top:0.25rem;color:#8d97a1;font-size:var(--fs-small);
  font-family:"Noto Serif TC","Songti TC",serif}
.shi-poem{margin-top:1.5rem}
.shi-line{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem;
  padding:1.125rem 1.5rem;border-bottom:1px solid var(--line);align-items:baseline}
.shi-line:last-child{border-bottom:0}
.shi-line .yuan{font-family:"Noto Serif TC","Songti TC",serif;
  font-size:clamp(1.25rem,1.5vw,1.5rem);line-height:2}
.shi-line .bai{color:#4c5560;font-size:var(--fs-body);line-height:1.95}
.shi-block{border:1px solid var(--line);border-radius:var(--radius);
  background:var(--surface);box-shadow:var(--shadow);overflow:hidden}
.shi-notes{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));
  gap:0.875rem;margin-top:1rem}
.shi-note{padding:1rem 1.25rem;border:1px solid var(--line);border-radius:14px;
  background:var(--surface)}
.shi-note b{display:block;margin-bottom:0.25rem;
  font-family:"Noto Serif TC","Songti TC",serif;font-size:var(--fs-lead)}
.shi-note span{color:var(--muted);font-size:var(--fs-small);line-height:1.85}
.shi-appr{margin-top:1rem;padding:1.75rem 2rem;border:1px solid var(--line);
  border-radius:var(--radius);background:var(--sand-soft);
  font-size:var(--fs-body);line-height:2.05;color:#5a5347}
.shi-appr p{margin:0 0 1.25rem;text-indent:2em}
.shi-appr p:last-child{margin-bottom:0}
.shi-appr .q{font-style:normal;font-family:"Noto Serif TC","Songti TC",serif;
  color:#3f3a30;font-weight:700}
.shi-empty{margin-top:1.5rem;padding:1.75rem;border:1px dashed var(--line);
  border-radius:var(--radius);color:var(--muted)}
@media(max-width:768px){
  .shi-line{grid-template-columns:1fr;gap:0.5rem}
}