
:root {
  --ink: #2c241b;
  --ink-light: #5a4d3d;
  --ink-muted: #8a7d6d;
  --paper: #f7f3eb;
  --paper-warm: #efe8db;
  --paper-dark: #e8dfd0;
  --cinnabar: #c45c48;
  --cinnabar-light: #d97a6a;
  --ochre: #b8956a;
  --ochre-light: #d4b88a;
  --jade: #6b8e6b;
  --jade-light: #8ab08a;
  --gold: #c9a84c;
  --gold-light: #e0c878;
  --border: #d4c8b8;
  --border-light: #e8dfd0;
  --shadow: rgba(44,36,27,0.08);
}
* { margin: 0; padding: 0; box-sizing: border-box; }
body {
  font-family: "Microsoft YaHei", "微软雅黑", "PingFang SC", Arial, sans-serif;
  background: var(--paper); color: var(--ink); line-height: 1.7; min-height: 100vh;
}
.header {
  background: linear-gradient(180deg, var(--ink) 0%, #3d3226 100%);
  color: var(--paper-warm); padding: 20px 28px;
  border-bottom: 3px solid var(--gold); display: flex; justify-content: space-between; align-items: center;
}
.brand { display: flex; align-items: center; gap: 14px; }
.brand-icon {
  width: 44px; height: 44px; border: 2px solid var(--gold); border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 20px; color: var(--gold); background: rgba(201,168,76,0.1);
}
.header-logo {
  width: 50px;
  height: 50px;
  object-fit: contain;
  display: block;
}
.brand-text h1 { font-size: 20px; font-weight: 600; letter-spacing: 4px; }
.brand-text p { font-size: 11px; color: var(--ochre-light); letter-spacing: 2px; }
.user-info { display: flex; align-items: center; gap: 12px; font-size: 13px; }
.user-role { padding: 4px 12px; border-radius: 4px; font-size: 11px; font-weight: 500; }
.role-hq { background: #f5ede0; color: var(--ochre); border: 1px solid var(--ochre-light); }
.role-doc { background: #e0f0e0; color: var(--jade); border: 1px solid var(--jade-light); }
.role-pharmacy { background: #f0e8f5; color: #8a6a9a; border: 1px solid #c8a8d8; }
.role-partner { background: #e8f0f8; color: #4a7ab8; border: 1px solid #8ab8d8; }
.btn-logout {
  padding: 6px 14px; border: 1px solid rgba(201,168,76,0.4); background: transparent;
  color: var(--ochre-light); border-radius: 6px; cursor: pointer; font-size: 12px; font-family: inherit;
}
.btn-logout:hover { border-color: var(--gold); color: var(--gold); }
.layout { display: flex; min-height: calc(100vh - 72px); }
.sidebar {
  width: 200px; background: var(--paper-warm); border-right: 1px solid var(--border);
  padding: 16px 0; flex-shrink: 0;
}
.nav-item {
  padding: 12px 20px; cursor: pointer; font-size: 13px; color: var(--ink-light);
  border-left: 3px solid transparent; transition: all 0.2s;
  display: flex; align-items: center; gap: 8px;
}
.nav-item:hover { background: rgba(184,149,106,0.08); color: var(--ink); }
.nav-item.active { background: rgba(184,149,106,0.12); border-left-color: var(--ochre); color: var(--ink); font-weight: 500; }
.nav-icon { width: 20px; text-align: center; }
.nav-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: var(--cinnabar); color: #fff; font-size: 10px; font-weight: 600; margin-left: auto; animation: badgePulse 2s infinite; }
.nav-badge-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--cinnabar); margin-left: auto; animation: badgePulse 2s infinite; }
@keyframes badgePulse { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.7; transform: scale(1.1); } }
.nav-msg { margin-top: 8px; padding: 10px 14px; border-radius: 8px; background: var(--paper); border: 1px solid var(--border-light); font-size: 12px; }
.nav-msg-item { display: flex; align-items: center; gap: 6px; padding: 4px 0; color: var(--ink-light); cursor: pointer; }
.nav-msg-item:hover { color: var(--ink); }
.nav-msg-item .dot { width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0; }
.nav-msg-title { font-size: 11px; color: var(--ink-muted); margin-bottom: 6px; font-weight: 600; }
.main { flex: 1; padding: 24px; overflow-y: auto; }
.page-title { font-size: 18px; font-weight: 600; margin-bottom: 4px; letter-spacing: 1px; }
.page-sub { font-size: 12px; color: var(--ink-muted); margin-bottom: 20px; }
.card {
  background: var(--paper-warm); border: 1px solid var(--border); border-radius: 10px;
  padding: 18px; margin-bottom: 16px; box-shadow: 0 2px 8px var(--shadow);
}
.card-title { font-size: 15px; font-weight: 600; margin-bottom: 14px; display: flex; align-items: center; gap: 8px; }
.card-title .icon { width: 26px; height: 26px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 13px; }
.kpi-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 16px; }
@media (max-width: 768px) { .kpi-grid { grid-template-columns: repeat(2, 1fr); } }
.kpi-card { text-align: center; padding: 16px; border-radius: 10px; background: var(--paper-warm); border: 1px solid var(--border); position: relative; overflow: hidden; }
.kpi-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, var(--ochre), var(--gold), var(--ochre)); opacity: 0.5; }
.kpi-value { font-size: 24px; font-weight: 600; font-family: "Microsoft YaHei", "微软雅黑", sans-serif; }
.kpi-label { font-size: 11px; color: var(--ink-muted); margin-top: 4px; }
.data-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.data-table th { text-align: left; padding: 10px 12px; font-weight: 600; color: var(--ink-muted); font-size: 12px; border-bottom: 2px solid var(--border); background: var(--paper-dark); }
.data-table td { padding: 10px 12px; border-bottom: 1px solid var(--border-light); color: var(--ink-light); }
.data-table tr:hover td { background: rgba(184,149,106,0.06); }
.btn { padding: 8px 18px; border-radius: 6px; border: 1px solid var(--border); background: var(--paper-warm); color: var(--ink-light); font-size: 13px; cursor: pointer; transition: all 0.2s; font-family: inherit; }
.btn:hover { border-color: var(--ochre); color: var(--ink); }
.btn-primary { background: var(--ink); color: var(--paper-warm); border-color: var(--ink); }
.btn-primary:hover { background: #3d3226; color: var(--gold); }
.btn-success { background: var(--jade); color: #fff; border-color: var(--jade); }
.btn-success:hover { background: #5a7a5a; }
.btn-danger { background: var(--cinnabar); color: #fff; border-color: var(--cinnabar); }
.btn-danger:hover { background: #a84a3a; }
.btn-sm { padding: 5px 12px; font-size: 12px; }
.form-group { margin-bottom: 14px; }
.form-label { display: block; font-size: 12px; color: var(--ink-muted); margin-bottom: 6px; }
.form-input, .form-select, .form-textarea { width: 100%; padding: 10px 14px; border-radius: 6px; border: 1px solid var(--border); background: var(--paper); color: var(--ink); font-size: 14px; font-family: inherit; box-sizing: border-box; }
.form-input:focus, .form-select:focus, .form-textarea:focus { outline: none; border-color: var(--ochre); box-shadow: 0 0 0 3px rgba(184,149,106,0.15); }
.form-textarea { min-height: 80px; resize: vertical; }
.status-tag { display: inline-flex; align-items: center; gap: 4px; padding: 3px 10px; border-radius: 4px; font-size: 11px; font-weight: 500; }
.status-dot { width: 6px; height: 6px; border-radius: 50%; }
.st-pending { background: #e8f0f8; color: #4a7ab8; }
.st-pending .status-dot { background: #4a7ab8; }
.st-approved { background: #e0f0e0; color: #4a6b4a; }
.st-approved .status-dot { background: #6b8e6b; }
.st-rejected { background: #f5e0dc; color: #c45c48; }
.st-rejected .status-dot { background: #c45c48; }
.st-prepared { background: #f0e8f5; color: #8a6a9a; }
.st-prepared .status-dot { background: #8a6a9a; }
.st-shipped { background: #f5f0e0; color: #9a7a2a; }
.st-shipped .status-dot { background: #c9a84c; }
.st-received { background: #e8e8e8; color: #8a7d6d; }
.st-received .status-dot { background: #8a7d6d; }
.st-transit { background: #e0e8f0; color: #5a7a9a; }
.st-transit .status-dot { background: #5a7a9a; }
.st-archived { background: #dff0ef; color: #236a67; box-shadow: inset 0 0 0 1px #b8d8d5; }
.st-archived .status-dot { background: #2b8079; }
.tag { display: inline-block; padding: 2px 8px; border-radius: 4px; font-size: 11px; font-weight: 500; }
.tag-hq { background: #f5ede0; color: #8a6d4b; border: 1px solid #d4b88a; }
.tag-doc { background: #e0f0e0; color: #4a6b4a; border: 1px solid #8ab08a; }
.tag-pharmacy { background: #f0e8f5; color: #7a5a8a; border: 1px solid #c8a8d8; }
.tag-partner { background: #e8f0f8; color: #4a7ab8; border: 1px solid #8ab8d8; }
.tag-gold { background: #f5f0e0; color: #9a7a2a; border: 1px solid #e0c878; }
.tag-gray { background: #e8e8e0; color: #6a6a5a; border: 1px solid #c8c8b8; }
.detail-panel { background: var(--paper); border: 1px solid var(--border); border-radius: 10px; padding: 14px; margin-top: 12px; }
.detail-item { padding: 10px 12px; margin-bottom: 8px; background: var(--paper-warm); border-radius: 6px; font-size: 13px; color: var(--ink-light); border-left: 3px solid var(--ochre); }
.detail-item strong { color: var(--ink); font-weight: 600; }
.empty-state { text-align: center; padding: 40px 20px; color: var(--ink-muted); font-size: 13px; }
.toast { position: fixed; top: auto; right: 16px; bottom: 16px; max-width: min(420px, calc(100vw - 32px)); padding: 12px 20px; border-radius: 8px; background: var(--ink); color: var(--paper-warm); font-size: 13px; line-height: 1.6; z-index: 1000; box-shadow: 0 4px 16px rgba(0,0,0,0.2); animation: slideIn 0.3s ease-out; }
@keyframes slideIn { from { transform: translateX(100%); opacity: 0; } to { transform: translateX(0); opacity: 1; } }
.hidden { display: none !important; }
@media (max-width: 768px) {
  .sidebar { width: 60px; padding: 16px 0; }
  .nav-item span { display: none; }
  .nav-item { padding: 12px 0; justify-content: center; }
  .header { padding: 16px 20px; flex-direction: column; gap: 10px; }
  .main { padding: 16px; }
  .kpi-grid { grid-template-columns: repeat(2, 1fr); }
}
.login-page { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 100vh; padding: 20px; }
.login-brand { text-align: center; margin-bottom: 40px; }
.login-brand h1 { font-size: 28px; letter-spacing: 6px; margin-bottom: 8px; }
.login-brand p { font-size: 13px; color: var(--ink-muted); letter-spacing: 2px; }
.login-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; max-width: 900px; width: 100%; }
@media (max-width: 768px) { .login-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { .login-grid { grid-template-columns: 1fr; } }
.login-card {
  background: var(--paper-warm); border: 1px solid var(--border); border-radius: 12px;
  padding: 28px 20px; text-align: center; cursor: pointer; transition: all 0.3s;
}
.login-card:hover { transform: translateY(-4px); box-shadow: 0 8px 24px var(--shadow); border-color: var(--ochre); }
.login-card .icon { font-size: 32px; margin-bottom: 12px; }
.login-card h3 { font-size: 15px; margin-bottom: 6px; }
.login-card p { font-size: 11px; color: var(--ink-muted); line-height: 1.5; }
.store-card { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr; gap: 8px; align-items: center; padding: 12px; border-bottom: 1px solid var(--border-light); font-size: 13px; }
.store-card:hover { background: rgba(184,149,106,0.04); }
.store-card-header { font-weight: 600; color: var(--ink-muted); font-size: 12px; padding: 10px 12px; border-bottom: 2px solid var(--border); background: var(--paper-dark); display: grid; grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr; gap: 8px; }

/* 物流时间线 */
.logistics-timeline { display: flex; align-items: center; gap: 0; padding: 12px 0; overflow-x: auto; }
.logistics-node { flex: 1; min-width: 80px; text-align: center; padding: 8px 4px; position: relative; }
.logistics-node .ln-dot { width: 10px; height: 10px; border-radius: 50%; margin: 0 auto 6px; background: var(--border); border: 2px solid var(--border); }
.logistics-node .ln-label { font-size: 11px; color: var(--ink-muted); }
.logistics-node.active .ln-dot { background: var(--jade); border-color: var(--jade); }
.logistics-node.active .ln-label { color: var(--jade); font-weight: 500; }
.logistics-node.current .ln-dot { background: var(--ochre); border-color: var(--ochre); animation: pulse 2s infinite; }
.logistics-node.current .ln-label { color: var(--ochre); font-weight: 600; }
.logistics-line { width: 20px; height: 2px; background: var(--border); flex-shrink: 0; }
@keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }

/* 物流信息卡片 */
.logistics-card { background: var(--paper); border: 1px solid var(--border-light); border-radius: 8px; padding: 12px; margin-top: 8px; }
.logistics-card .lc-row { display: flex; justify-content: space-between; padding: 6px 0; font-size: 12px; border-bottom: 1px dashed var(--border-light); }
.logistics-card .lc-row:last-child { border-bottom: none; }
.logistics-card .lc-label { color: var(--ink-muted); }
.logistics-card .lc-value { color: var(--ink); font-weight: 500; }

/* 打印弹窗 */
.print-modal-overlay { position: fixed; inset: 0; background: rgba(0,0,0,0.5); z-index: 100; display: flex; align-items: center; justify-content: center; }
.print-modal { background: var(--paper); border: 1px solid var(--border); border-radius: 12px; padding: 24px; max-width: 500px; width: 90%; max-height: 80vh; overflow-y: auto; }
.print-modal-header { font-size: 16px; font-weight: 600; margin-bottom: 16px; padding-bottom: 10px; border-bottom: 1px solid var(--border); }
.print-content { font-size: 14px; line-height: 1.8; }
.print-content .print-row { display: flex; padding: 6px 0; border-bottom: 1px dashed var(--border-light); }
.print-content .print-label { width: 80px; color: var(--ink-muted); font-size: 12px; flex-shrink: 0; }
.print-content .print-value { flex: 1; color: var(--ink); }
.print-actions { margin-top: 20px; display: flex; gap: 10px; justify-content: flex-end; }
@media print {
  .print-modal-overlay { background: #fff; position: static; }
  .print-modal { border: none; box-shadow: none; max-width: 100%; }
  .print-actions { display: none; }
  .header, .sidebar, .toast { display: none; }
  .a5-test-toolbar { display: none !important; }
}

/* 处方展开 */
.rx-expand { cursor: pointer; color: var(--ochre); font-size: 12px; text-decoration: underline; }
.rx-full { display: none; margin-top: 8px; padding: 10px; background: var(--paper); border-radius: 6px; border: 1px solid var(--border-light); font-size: 13px; line-height: 1.8; }
.rx-full.show { display: block; }

/* 详情弹窗 */
.modal-overlay { position: fixed; inset: 0; background: rgba(0,0,0,0.5); z-index: 100; display: flex; align-items: center; justify-content: center; }
.modal-box { background: var(--paper); border: 1px solid var(--border); border-radius: 12px; padding: 24px; max-width: 700px; width: 90%; max-height: 90vh; overflow-y: auto; }
.modal-header { font-size: 16px; font-weight: 600; margin-bottom: 16px; padding-bottom: 10px; border-bottom: 1px solid var(--border); display: flex; justify-content: space-between; align-items: center; }
.modal-close { cursor: pointer; font-size: 20px; color: var(--ink-muted); }
.modal-close:hover { color: var(--ink); }
.modal-row { display: flex; padding: 8px 0; border-bottom: 1px dashed var(--border-light); font-size: 13px; }
.modal-row:last-child { border-bottom: none; }
.modal-label { width: 80px; color: var(--ink-muted); flex-shrink: 0; }
.modal-value { flex: 1; color: var(--ink); }
.modal-actions { margin-top: 20px; display: flex; gap: 10px; justify-content: flex-end; }

/* 照片预览 */
.photo-preview-wrap { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 10px; }
.photo-thumb { position: relative; display: inline-block; }
.photo-thumb img { width: 80px; height: 80px; object-fit: cover; border-radius: 8px; border: 1px solid var(--border); cursor: zoom-in; }
.photo-thumb .photo-del { position: absolute; top: -6px; right: -6px; width: 20px; height: 20px; border-radius: 50%; background: var(--cinnabar); color: #fff; border: none; cursor: pointer; font-size: 12px; line-height: 20px; text-align: center; padding: 0; }
.photo-add { width: 80px; height: 80px; border-radius: 8px; border: 2px dashed var(--border); display: flex; align-items: center; justify-content: center; color: var(--ink-muted); font-size: 11px; text-align: center; cursor: pointer; }
.photo-viewer{position:fixed;inset:0;z-index:260;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(22,15,13,.88);backdrop-filter:blur(8px)}
.photo-viewer-shell{position:relative;display:flex;flex-direction:column;width:min(1180px,96vw);height:min(900px,94vh);overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:16px;background:#171311;box-shadow:0 28px 80px rgba(0,0,0,.55)}
.photo-viewer-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 14px;background:rgba(39,29,26,.96);color:#fff}.photo-viewer-head-main{display:flex;align-items:center;gap:4px;white-space:nowrap}.photo-viewer-head b{font-size:15px}.photo-viewer-head span{color:#d8cbc4;font-size:12px}
.photo-viewer-tools{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:0}.photo-viewer-tool{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 11px;border:1px solid rgba(255,255,255,.22);border-radius:9px;background:rgba(255,255,255,.09);color:#fff;font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}.photo-viewer-tool:hover{transform:translateY(-1px);border-color:rgba(255,255,255,.42);background:rgba(255,255,255,.16)}.photo-viewer-tool:disabled{opacity:.42;cursor:not-allowed;transform:none}.photo-viewer-zoom{display:inline-flex;align-items:center;justify-content:center;min-width:48px;color:#f4e7df!important;font-variant-numeric:tabular-nums}
.photo-viewer-close{width:36px;height:36px;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:24px;line-height:32px;cursor:pointer}.photo-viewer-close:hover{background:#78231f}
.photo-viewer-stage{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:18px;overflow:hidden;background:radial-gradient(circle at center,#3a302c 0,#191513 72%);cursor:grab;touch-action:none}.photo-viewer-stage.is-dragging{cursor:grabbing}.photo-viewer-stage.text-open{cursor:default}
.photo-viewer-image{display:block;max-width:calc(100% - 36px);max-height:calc(100% - 36px);object-fit:contain;border-radius:5px;background:#fff;box-shadow:0 14px 36px rgba(0,0,0,.45);cursor:inherit;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;transform-origin:center center;will-change:transform}
.photo-viewer-nav{position:absolute;top:50%;width:46px;height:58px;transform:translateY(-50%);border:1px solid rgba(255,255,255,.24);border-radius:12px;background:rgba(20,15,13,.65);color:#fff;font-size:28px;cursor:pointer;z-index:2}.photo-viewer-nav:hover{background:rgba(120,35,31,.92)}.photo-viewer-prev{left:14px}.photo-viewer-next{right:14px}.photo-viewer-nav:disabled{display:none}
.photo-viewer-stage.text-open .photo-viewer-next{display:none}.photo-viewer-text-panel{position:absolute;z-index:4;top:14px;right:14px;bottom:14px;display:flex;flex-direction:column;width:min(390px,42vw);overflow:hidden;border:1px solid rgba(190,159,132,.45);border-radius:14px;background:rgba(255,253,249,.98);box-shadow:0 20px 50px rgba(0,0,0,.38);cursor:default;animation:photoTextIn .18s ease-out}.photo-viewer-text-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 13px;border-bottom:1px solid #eadfd5;color:#442f28}.photo-viewer-text-head b{font-size:14px}.photo-viewer-text-actions{display:flex;align-items:center;gap:6px}.photo-viewer-copy,.photo-viewer-text-close{height:30px;border:1px solid #ddcfc3;border-radius:8px;background:#fff;color:#6d312c;font-family:inherit;font-size:12px;font-weight:700;cursor:pointer}.photo-viewer-copy{padding:0 10px}.photo-viewer-text-close{width:30px;padding:0;font-size:18px}.photo-viewer-copy:hover,.photo-viewer-text-close:hover{border-color:#b77a70;background:#fff5f2}.photo-viewer-text-content{flex:1;margin:0;padding:15px;overflow:auto;color:#392d29;font-family:inherit;font-size:14px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;cursor:text;user-select:text;-webkit-user-select:text}.photo-viewer-foot{display:flex;align-items:center;justify-content:center;padding:9px 14px;background:rgba(39,29,26,.96);color:#d8cbc4;font-size:12px}.photo-viewer-foot b{margin:0 4px;color:#fff;font-weight:700}@keyframes photoTextIn{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}@media(max-width:760px){.photo-viewer{padding:8px}.photo-viewer-shell{width:100%;height:96vh;border-radius:12px}.photo-viewer-head{align-items:flex-start}.photo-viewer-head-main{padding-top:8px}.photo-viewer-tools{flex-wrap:wrap}.photo-viewer-tool-reset{display:none}.photo-viewer-text-panel{top:10px;right:10px;bottom:10px;left:10px;width:auto}.photo-viewer-foot{font-size:11px}.photo-viewer-nav{width:38px;height:50px}.photo-viewer-prev{left:8px}.photo-viewer-next{right:8px}}

/* 系统内确认弹窗 */
.system-confirm{position:fixed;inset:0;z-index:280;display:grid;place-items:center;padding:20px;background:rgba(35,20,18,.56);backdrop-filter:blur(7px)}
.system-confirm-card{width:min(460px,94vw);overflow:hidden;border:1px solid rgba(184,149,106,.5);border-radius:20px;background:linear-gradient(150deg,#fffdfa 0%,#fbf6ed 100%);box-shadow:0 28px 80px rgba(48,25,20,.32);animation:systemConfirmIn .2s ease-out}
.system-confirm-accent{height:5px;background:linear-gradient(90deg,#7b211e,#a14634 58%,#bd8c43)}
.system-confirm-body{padding:25px 27px 20px}
.system-confirm-heading{display:flex;align-items:flex-start;gap:14px}
.system-confirm-icon{display:grid;flex:0 0 48px;width:48px;height:48px;place-items:center;border:1px solid rgba(123,33,30,.18);border-radius:15px;background:linear-gradient(145deg,#f9e9e6,#fff7ef);color:#7b211e;box-shadow:0 8px 18px rgba(123,33,30,.1)}
.system-confirm-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2}
.system-confirm-copy{min-width:0}.system-confirm-copy h3{margin:1px 0 7px;color:#3e2c27;font-size:18px}.system-confirm-copy p{margin:0;color:#74645b;font-size:13px;line-height:1.75}
#system-confirm-message{white-space:pre-line;overflow-wrap:anywhere;max-height:40dvh;overflow:auto}
.system-confirm-input{margin-top:16px}
.system-confirm-ok:disabled{opacity:.55;cursor:default}
.system-confirm-note{display:flex;align-items:flex-start;gap:8px;margin-top:17px;padding:11px 12px;border:1px solid rgba(184,149,106,.25);border-radius:11px;background:rgba(184,149,106,.08);color:#7b6a5f;font-size:11px;line-height:1.65}.system-confirm-note b{color:#7b211e;white-space:nowrap}
.system-confirm-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:10px;padding:16px 27px 24px}
.system-confirm-btn{min-height:44px;border-radius:11px;font-family:inherit;font-size:13px;font-weight:800;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.system-confirm-btn:hover{transform:translateY(-1px)}
.system-confirm-cancel{border:1px solid #dfd2c4;background:#fff;color:#6e5a50}.system-confirm-cancel:hover{background:#f7f1e9}
.system-confirm-ok{border:1px solid #7b211e;background:linear-gradient(135deg,#7b211e,#9b3129);color:#fff;box-shadow:0 9px 20px rgba(123,33,30,.22)}.system-confirm-ok:hover{box-shadow:0 11px 24px rgba(123,33,30,.3)}
@keyframes systemConfirmIn{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:520px){.system-confirm-body{padding:21px 20px 17px}.system-confirm-actions{padding:14px 20px 20px}.system-confirm-heading{gap:11px}.system-confirm-icon{width:42px;height:42px;flex-basis:42px}.system-confirm-copy h3{font-size:16px}}

/* 传统处方笺（详情/打印共用） */
.rx-paper { font-family: "Microsoft YaHei", "微软雅黑", "PingFang SC", Arial, sans-serif; background: #fff; padding: 28px; border: 2px solid var(--ink); }
.rx-paper-header { text-align: center; border-bottom: 2px solid var(--cinnabar); padding-bottom: 15px; margin-bottom: 20px; }
.rx-paper-header h2 { font-size: 26px; color: var(--cinnabar); letter-spacing: 6px; margin: 0; font-weight: bold; }
.rx-paper-header .sub { font-size: 12px; color: #666; margin-top: 6px; }
.rx-paper-header .rx-paper-number { text-align: right; margin-top: 8px; font-size: 13px; color: var(--ink); overflow-wrap: anywhere; }
.rx-paper-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-bottom: 20px; }
.rx-paper-item { display: flex; align-items: baseline; border-bottom: 1px solid #999; padding-bottom: 4px; }
.rx-paper-item label { font-weight: bold; min-width: 70px; font-size: 13px; white-space: nowrap; color: var(--ink); }
.rx-paper-item span { flex: 1; font-size: 13px; color: var(--ink); padding: 0 4px; }
.rx-paper-grid .rx-paper-item, .rx-paper-grid .rx-paper-item span { min-width: 0; }
.rx-paper-grid .rx-paper-item span { overflow-wrap: anywhere; white-space: pre-wrap; }
.rx-paper-box { border: 1px solid #333; padding: 12px; margin-bottom: 15px; }
.rx-paper-box-title { font-weight: bold; margin-bottom: 8px; font-size: 14px; color: var(--ink); }
.rx-paper-box-content { font-size: 14px; color: var(--ink); line-height: 1.8; }
.rx-paper-rx { border: 2px solid #333; padding: 20px; min-height: 200px; position: relative; margin-bottom: 15px; }
.rx-paper-rx::before { content: '℞'; position: absolute; top: 15px; left: 15px; font-size: 28px; font-weight: bold; color: var(--cinnabar); font-family: "Microsoft YaHei", "微软雅黑", sans-serif; }
.rx-paper-rx-content { margin-top: 40px; font-size: 15px; line-height: 2; color: var(--ink); white-space: pre-wrap; }
.rx-paper-dosage { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; margin-bottom: 15px; padding: 12px; border: 1px solid #999; }
.rx-paper-signature { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 30px; font-size: 13px; }
.rx-paper-sig-item { display: flex; align-items: flex-end; border-bottom: 1px solid #333; padding-bottom: 6px; }
.rx-paper-sig-item label { font-weight: bold; white-space: nowrap; margin-right: 8px; color: var(--ink); }
.rx-paper-sig-item span { flex: 1; font-size: 13px; color: var(--ink); text-align: center; }
.rx-paper-date { text-align: right; margin-top: 20px; font-size: 13px; display: flex; justify-content: flex-end; gap: 8px; color: var(--ink); }
.rx-paper-meta { margin-top: 16px; padding-top: 12px; border-top: 1px dashed var(--border); font-size: 12px; color: var(--ink-muted); }
@media (max-width: 768px) {
  .rx-paper { padding: 16px; }
  .rx-paper-grid { grid-template-columns: repeat(2, 1fr); }
  .rx-paper-dosage { grid-template-columns: 1fr; }
  .rx-paper-signature { grid-template-columns: 1fr; }
  .modal-box { max-width: 95%; padding: 16px; }
}
.login-logo {
  transition: all 0.4s ease;
  cursor: pointer;
}
.login-logo:hover {
  transform: scale(1.3);
  filter: drop-shadow(0 0 20px var(--cinnabar)) brightness(1.25);
  animation: logoPulse 2s infinite;
}
.login-brand .login-title {
  transition: all 0.4s ease;
  cursor: default;
  display: inline-block;
}
.login-brand .login-title:hover {
  transform: scale(1.15) !important;
  color: var(--cinnabar) !important;
  text-shadow: 0 0 20px var(--gold), 0 0 40px var(--cinnabar) !important;
}
@keyframes logoPulse {
  0%, 100% { filter: drop-shadow(0 0 12px var(--cinnabar)) brightness(1.15); }
  50% { filter: drop-shadow(0 0 30px var(--gold)) brightness(1.4); }
}
.login-logo:hover {
  transform: scale(1.3);
  filter: drop-shadow(0 0 20px var(--cinnabar)) brightness(1.25);
  animation: logoPulse 2s infinite;
}
.login-brand .login-title {
  transition: all 0.4s ease;
  cursor: default;
  display: inline-block;
}
.login-brand .login-title:hover {
  transform: scale(1.15) !important;
  color: var(--cinnabar) !important;
  text-shadow: 0 0 20px var(--gold), 0 0 40px var(--cinnabar) !important;
}
@keyframes logoPulse {
  0%, 100% { filter: drop-shadow(0 0 12px var(--cinnabar)) brightness(1.15); }
  50% { filter: drop-shadow(0 0 30px var(--gold)) brightness(1.4); }
}

/* ===== 2026 精美优化版：与患者服务及回访系统统一视觉 ===== */
:root{
  --wine:#731f1c;--wine-2:#922f28;--wine-3:#4e1514;
  --gold:#b58b42;--gold-2:#d7b66e;--paper:#fbf7ed;--paper-warm:#fff;
  --paper-dark:#f7f1e6;--ink:#2b2420;--ink-light:#51443d;--ink-muted:#7b6f66;
  --border:#e5dac7;--border-light:#efe7da;--cinnabar:#b43a31;--cinnabar-light:#d55b50;
  --ochre:#b58b42;--ochre-light:#d7b66e;--jade:#27765c;--jade-light:#a9d7c5;
  --shadow:0 10px 30px rgba(80,35,24,.10);--radius:16px;
}
html{font-size:16px;background:#f1ece2}
body{font-family:"Microsoft YaHei","微软雅黑","PingFang SC","Noto Sans CJK SC",Arial,sans-serif;background:radial-gradient(circle at 86% 2%,rgba(181,139,66,.08),transparent 28%),#f1ece2;color:var(--ink);line-height:1.6}
button,input,select,textarea{font:inherit}
button{cursor:pointer}

/* 登录入口 */
.login-page{position:relative;min-height:100vh;padding:48px 28px 36px;background:linear-gradient(135deg,#431211 0%,#731f1c 52%,#8e3129 100%);overflow:hidden}
.login-page:before,.login-page:after{content:"";position:absolute;border:1px solid rgba(255,229,180,.12);border-radius:50%;pointer-events:none}
.login-page:before{width:520px;height:520px;right:-190px;top:-230px;box-shadow:0 0 0 50px rgba(255,255,255,.018),0 0 0 105px rgba(255,255,255,.012)}
.login-page:after{width:360px;height:360px;left:-160px;bottom:-210px;box-shadow:0 0 0 42px rgba(215,182,110,.025)}
.login-brand{position:relative;z-index:1;margin-bottom:34px;color:#fff}
.login-logo{width:104px!important;height:104px!important;padding:10px;background:#fff;border:1px solid rgba(255,255,255,.7);border-radius:25px;box-shadow:0 18px 42px rgba(22,4,3,.28);margin-bottom:20px!important}
.login-brand h1,.login-brand .login-title{font-size:30px;line-height:1.35;letter-spacing:3px;color:#fff;margin:0 0 10px;text-shadow:0 2px 12px rgba(35,5,4,.28)}
.login-brand p{font-size:14px;color:#f5dfbd;letter-spacing:1.5px;margin:0}
.login-brand:has(+ .hc-auth){
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:16px 20px;
  max-width:100%;
}
.login-brand:has(+ .hc-auth) .login-logo{margin:0!important;flex:none;object-fit:contain}
.login-brand:has(+ .hc-auth) .login-title{margin:0}
.login-grid{position:relative;z-index:1;max-width:1120px;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.login-card{position:relative;min-height:210px;background:rgba(255,251,243,.97);border:1px solid rgba(255,255,255,.76);border-radius:18px;padding:28px 22px 24px;text-align:left;box-shadow:0 16px 42px rgba(36,8,7,.22);backdrop-filter:blur(10px);overflow:hidden}
.login-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,var(--gold-2),var(--wine))}
.login-card:after{content:"进入 →";position:absolute;right:20px;bottom:18px;color:var(--wine);font-size:13px;font-weight:800}
.login-card:hover{transform:translateY(-7px);border-color:#efd39a;box-shadow:0 24px 58px rgba(32,6,5,.32)}
.login-card .icon{width:50px;height:50px;display:grid;place-items:center;font-size:25px;margin:0 0 19px;border-radius:14px;background:linear-gradient(145deg,#fff7e8,#f2dfb8);box-shadow:inset 0 0 0 1px #e7cea1}
.login-card h3{font-size:18px;color:#402824;margin:0 0 9px}
.login-card p{font-size:13px;color:#786a61;line-height:1.65;margin:0;padding-right:5px}
.login-page>div:last-child{position:relative;z-index:1;color:#e8d1bd!important;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);padding:8px 13px;border-radius:99px}

/* 系统骨架 */
#main-system{min-height:100vh}
.header{position:sticky;top:0;z-index:30;min-height:82px;padding:13px 28px;background:rgba(255,253,248,.96);color:var(--ink);border:0;border-bottom:1px solid var(--border);box-shadow:0 7px 24px rgba(77,34,24,.07);backdrop-filter:blur(12px)}
.brand{gap:15px}
.header-logo{width:54px;height:54px;padding:4px;border-radius:14px;background:#fff;border:1px solid #ddc99e;box-shadow:0 7px 18px rgba(83,33,23,.10)}
.brand-text h1{font-size:20px;letter-spacing:1.5px;color:#402723;margin:0;font-weight:800}
.brand-text p{font-size:12px;letter-spacing:.8px;color:#88766d;margin:3px 0 0}
.user-info{gap:9px;flex-wrap:wrap;justify-content:flex-end}
#local-save-status{display:inline-flex;align-items:center;gap:7px!important;border:1px solid #b9ddce;background:#eff9f4;color:#246b53!important;padding:7px 10px;border-radius:10px;font-weight:700}
#local-save-status:before{content:"";width:8px;height:8px;border-radius:50%;background:#2e9a73;box-shadow:0 0 0 4px rgba(46,154,115,.12)}
#current-user{font-size:13px;font-weight:700;color:#54443d}
.user-role{padding:7px 11px;border-radius:9px;font-size:12px;font-weight:800}
.role-hq,.role-doc,.role-pharmacy,.role-partner{background:#fff6df;color:#805615;border:1px solid #e8c77e}
.btn-logout{min-height:38px;padding:7px 12px;border:1px solid #dacdbb;background:#fff;color:#5d4c43;border-radius:9px;font-weight:700;transition:.18s}
.btn-logout:hover{transform:translateY(-1px);border-color:#b58b42;background:#fff9ed;color:var(--wine);box-shadow:0 5px 13px rgba(78,33,24,.08)}
.layout{min-height:calc(100vh - 82px);align-items:stretch}
.sidebar{position:sticky;top:82px;width:248px;height:calc(100vh - 82px);overflow-x:hidden;overflow-y:auto;background:linear-gradient(180deg,var(--wine-3),var(--wine));border:0;padding:20px 15px;box-shadow:8px 0 30px rgba(56,18,15,.11)}
.sidebar:before{content:none;display:none}
.nav-item{position:relative;margin:5px 0;padding:12px 14px;border:0;border-radius:10px;color:#eadfd8;font-size:16px;line-height:1.5;gap:11px;transition:transform .22s cubic-bezier(.2,.8,.2,1),background-color .22s ease,color .22s ease,box-shadow .22s ease;will-change:transform}
.nav-item:hover{transform:translateX(5px);background:rgba(255,255,255,.13);color:#fff;box-shadow:0 7px 18px rgba(35,9,8,.18)}
.nav-item:active{transform:translateX(4px) scale(.985)}
.nav-item.active{background:#fff7e8;border:0;color:var(--wine);font-weight:800;box-shadow:0 8px 22px rgba(0,0,0,.16)}
.nav-item.active:hover{transform:translateX(3px);background:#fffaf0;box-shadow:0 10px 26px rgba(0,0,0,.2)}
.nav-icon{width:23px;font-size:17px;transition:transform .24s cubic-bezier(.2,.8,.2,1),filter .22s ease}
.nav-item:hover .nav-icon{transform:translateY(-1px) scale(1.14) rotate(-3deg);filter:drop-shadow(0 3px 5px rgba(0,0,0,.2))}
.nav-item.active:hover .nav-icon{transform:translateY(-1px) scale(1.1)}
.nav-badge{background:#d6453d;color:#fff}
.nav-msg{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.14)!important;color:#f5e9de!important;box-shadow:none!important}
.nav-msg-title{color:#f3dcae}.nav-msg-item{color:#eadfd8}.nav-msg-item:hover{color:#fff}
.header-message-center{position:relative;display:flex;flex:1 1 430px;min-width:280px;max-width:520px;min-height:58px;align-items:center;gap:11px;margin:0 24px;padding:8px 12px;border:2px solid #de7169;border-radius:15px;background:radial-gradient(circle at 8% 50%,rgba(188,52,44,.12),transparent 29%),linear-gradient(135deg,#fff9f5,#fffdf9 58%,#fff5e8);color:#552c27;box-shadow:0 7px 22px rgba(123,35,29,.13);overflow:hidden;transform-origin:center;animation:headerMessageBreathe 1.55s ease-in-out infinite!important}.header-message-center:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(105deg,transparent 18%,rgba(255,255,255,.88) 46%,transparent 72%);transform:translateX(-120%);animation:headerMessageShine 3.8s ease-in-out infinite!important;pointer-events:none}.header-alert-icon{position:relative;z-index:1;display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center;border-radius:12px;background:linear-gradient(145deg,#8f2822,#c8483d);color:#fff8ec;box-shadow:0 6px 15px rgba(151,44,36,.25);animation:headerIconBreathe 1.55s ease-in-out infinite!important}.header-alert-icon .ui-icon{width:19px;height:19px}.header-alert-icon:after{content:"";position:absolute;inset:-4px;border:2px solid rgba(190,58,49,.42);border-radius:15px;animation:headerMessageRing 1.55s ease-out infinite!important}.header-alert-copy{position:relative;z-index:1;flex:1;min-width:0}.header-alert-head{display:flex;align-items:center;gap:7px;margin-bottom:4px;white-space:nowrap}.header-alert-head strong{color:#6f211d;font-size:13px;font-weight:900}.header-alert-role{padding:2px 6px;border-radius:99px;background:#f3e0d6;color:#93423a;font-size:10px;font-weight:800}.header-alert-total{margin-left:auto;color:#a23c34;font-size:11px;font-weight:800}.header-alert-items{display:flex;align-items:center;gap:6px;min-width:0;overflow-x:auto;scrollbar-width:none}.header-alert-items::-webkit-scrollbar{display:none}.header-alert-item{display:inline-flex;flex:0 0 auto;min-height:25px;align-items:center;gap:6px;padding:4px 8px;border:1px solid #ead5c4;border-radius:8px;background:rgba(255,255,255,.82);color:#68443b;font-family:inherit;font-size:11px;font-weight:700;line-height:1;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.header-alert-item:hover{transform:translateY(-1px);border-color:#d49a76;background:#fff;box-shadow:0 4px 10px rgba(96,42,30,.10)}.header-alert-item b{display:grid;min-width:19px;height:19px;padding:0 5px;place-items:center;border-radius:99px;background:var(--alert-color,#b43a31);color:#fff;font-size:10px;box-shadow:0 0 0 3px var(--alert-soft,rgba(180,58,49,.10));animation:headerCountBreathe 1.55s ease-in-out infinite!important}.header-alert-item:after{content:"›";color:var(--alert-color,#b43a31);font-size:15px;font-weight:900}.header-alert-item.red{--alert-color:#b43a31;--alert-soft:rgba(180,58,49,.11)}.header-alert-item.gold{--alert-color:#b3751b;--alert-soft:rgba(179,117,27,.12)}.header-alert-item.blue{--alert-color:#3d769d;--alert-soft:rgba(61,118,157,.11)}.header-alert-item.purple{--alert-color:#8055a4;--alert-soft:rgba(128,85,164,.11)}@keyframes headerMessageBreathe{0%,100%{transform:scale(1);border-color:#df8c84;background-color:#fffaf6;box-shadow:0 6px 17px rgba(123,35,29,.11),0 0 0 0 rgba(213,55,47,0)}50%{transform:scale(1.018);border-color:#e22c23;background-color:#fff1ed;box-shadow:0 10px 28px rgba(153,37,30,.24),0 0 0 6px rgba(226,44,35,.16),0 0 24px rgba(226,44,35,.18)}}@keyframes headerIconBreathe{0%,100%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.09);filter:brightness(1.16)}}@keyframes headerCountBreathe{0%,100%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.13);filter:brightness(1.18)}}@keyframes headerMessageRing{0%{opacity:1;transform:scale(.82)}72%,100%{opacity:0;transform:scale(1.28)}}@keyframes headerMessageShine{0%,54%{transform:translateX(-120%)}80%,100%{transform:translateX(120%)}}@media(max-width:1180px) and (min-width:769px){.header-message-center{flex-basis:205px;min-width:175px;max-width:220px;margin:0 12px}.header-alert-items{display:none}.header-alert-total{margin-left:0}.header-alert-head{margin-bottom:0;align-items:flex-start;flex-direction:column;gap:1px}.header-alert-role{display:none}}@media(max-width:768px){.header-message-center{order:3;width:100%;max-width:none;min-width:0;margin:2px 0 0}.header-alert-items{flex-wrap:wrap;overflow:visible}}
.header-message-center{animation-duration:2.66s!important}
.header-alert-icon{display:flex;align-items:center;justify-content:center;line-height:0;animation-duration:2.66s!important}
.header-alert-icon .ui-icon{display:block;flex:0 0 auto;margin:0}
.header-alert-icon:after{animation-duration:2.66s!important}
.header-alert-total{color:#75514a}
.header-alert-total-number{color:#c12e27;font-style:normal;font-weight:900}
.header-alert-item b{display:inline-flex;flex:0 0 22px;width:22px;min-width:22px;height:22px;padding:0;align-items:center;justify-content:center;border:1px solid #9f251f;background:#b9362e;color:#fff;font-size:11px;line-height:1;text-align:center;box-shadow:0 0 0 3px rgba(185,54,46,.14);animation-duration:2.66s!important}
.main{min-width:0;padding:28px 30px 48px;background:transparent}
.page-title{font-size:27px;line-height:1.28;font-weight:800;letter-spacing:.2px;color:#3b2420;margin-bottom:7px}
.page-sub{font-size:14px;color:var(--ink-muted);margin-bottom:22px}

/* 卡片与数据层级 */
.kpi-grid{gap:15px;margin-bottom:20px}
.kpi-card{min-height:118px;padding:20px;text-align:left;background:linear-gradient(145deg,#fff,#fffaf1);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);transition:.2s}
.kpi-card:before{height:4px;background:linear-gradient(90deg,var(--wine),var(--gold));opacity:1}
.kpi-card:after{content:"";position:absolute;right:-28px;top:-38px;width:105px;height:105px;border-radius:50%;background:rgba(181,139,66,.09)}
.kpi-card:hover{transform:translateY(-3px);border-color:#d8bd86;box-shadow:0 16px 38px rgba(80,35,24,.13)}
.kpi-value{position:relative;z-index:1;font-size:31px;font-weight:850;color:var(--wine);line-height:1.2}
.kpi-label{position:relative;z-index:1;margin-top:9px;color:#766960;font-size:13px;font-weight:700}
.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:18px;box-shadow:var(--shadow);overflow:auto}
.card-title{font-size:18px;color:#3f2d27;margin-bottom:17px;font-weight:800}
.detail-panel{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}
.detail-item{padding:12px 14px;margin-bottom:9px;background:#fffcf7;border:1px solid #eee3d4;border-left:4px solid var(--gold);border-radius:10px;font-size:14px;color:#594c44}
.detail-item strong{color:#3d2d26;font-weight:800}
.empty-state{padding:45px 20px;color:#8a7c72;font-size:14px}

/* 表格 */
.data-table{min-width:820px;border-collapse:separate;border-spacing:0;width:100%}
.data-table th{padding:13px 14px;background:#faf6ee;color:#6a5c53;font-size:13px;font-weight:800;border-bottom:1px solid var(--line);white-space:nowrap}
.data-table td{padding:13px 14px;border-bottom:1px solid #eee5d8;color:#51443d;font-size:14px;vertical-align:middle}
.data-table tbody tr{transition:.14s}.data-table tbody tr:hover td{background:#fffcf6}
.data-table td:first-child strong{color:var(--wine)}
.store-card-header{padding:12px 14px;background:#faf6ee;border-bottom:1px solid var(--line);color:#6a5c53;font-size:13px;border-radius:10px 10px 0 0}
.store-card{padding:14px;border-bottom:1px solid #eee5d8;font-size:14px}.store-card:hover{background:#fffcf6}

/* 表单、按钮、状态 */
.btn{min-height:40px;padding:9px 14px;border:1px solid var(--line);background:#fff;color:#493c35;border-radius:10px;font-size:14px;font-weight:700;box-shadow:none}
.btn:hover{transform:translateY(-1px);border-color:#cfac6c;box-shadow:0 6px 14px rgba(78,33,24,.08)}
.btn-primary{background:var(--wine);border-color:var(--wine);color:#fff}.btn-primary:hover{background:#8a2a24;color:#fff}
.btn-success{background:var(--jade);border-color:var(--jade);color:#fff}.btn-danger{background:#fff8f7;border-color:#e5bdb9;color:#a6332c}
.btn-sm{min-height:33px;padding:6px 10px;font-size:13px}
.suggestion-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}
.suggestion-copy-btn{flex:0 0 auto;min-height:31px;padding:5px 10px;border-color:#d7b978;background:#fffaf0;color:var(--wine);font-size:13px;font-weight:800}
.suggestion-copy-btn:hover{border-color:var(--wine);background:#fff2d8;color:var(--wine)}
.form-label{font-size:14px;color:#5b4c44;font-weight:700;margin-bottom:7px}
.form-input,.form-select,.form-textarea{padding:11px 12px;border:1px solid #d9cebd;background:#fffdf9;color:#302821;border-radius:10px;font-size:14px;outline:none}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(181,139,66,.14)}
.status-tag,.tag{padding:4px 9px;border-radius:99px;font-size:12px;font-weight:800}
.st-pending{background:#fff2d8;color:#8c5a12}.st-approved{background:#def3e8;color:#216d52}.st-rejected{background:#fde4e1;color:#a3332c}.st-prepared{background:#eee8f6;color:#725696}.st-shipped{background:#e5eff8;color:#2d648d}.st-received{background:#edf1ee;color:#56675e}
.tag-hq,.tag-gold{background:#fff2d8;color:#8c5a12;border-color:#ead19c}.tag-doc{background:#def3e8;color:#216d52;border-color:#b6decf}.tag-pharmacy{background:#eee8f6;color:#725696;border-color:#d7cbea}.tag-partner{background:#e5eff8;color:#2d648d;border-color:#c7d9e9}.tag-gray{background:#eeeae5;color:#73675e;border-color:#ddd4cb}
.pt-role-manager{background:#f8e3df;color:#942f27;border:1px solid #e7b7b0}.pt-role-doctor{background:#dff2e8;color:#226c51;border:1px solid #b8dccd}.pt-role-health{background:#eee7f7;color:#71549a;border:1px solid #d2c3e6}.pt-role-service{background:#e3eef8;color:#2d648d;border:1px solid #bfd4e6}.pt-role-ground{background:#fff0d8;color:#9a6117;border:1px solid #ead09d}.pt-role-guide{background:#dff2f1;color:#26706c;border:1px solid #b6dcda}.pt-role-other{background:#eeeae5;color:#73675e;border:1px solid #ddd4cb}
.staff-test-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;padding:12px 14px;border:1px dashed #c9a15f;border-radius:11px;background:linear-gradient(90deg,#fff7e8,#fffdf8);box-shadow:0 4px 12px rgba(92,48,24,.05)}.staff-test-copy{display:flex;align-items:center;gap:9px;min-width:0}.staff-test-copy b{flex:0 0 auto;padding:3px 8px;border-radius:99px;background:#7a2520;color:#fff9e9;font-size:11px;letter-spacing:.5px}.staff-test-copy span{color:#806c5d;font-size:12px;line-height:1.6}.staff-test-fill-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;min-height:37px;padding:7px 14px;border:1px solid #6f1e1b;border-radius:9px;background:linear-gradient(135deg,#6d1d1a,#8d3029);color:#fffdf6;font-family:"Microsoft YaHei","微软雅黑",sans-serif;font-size:13px;font-weight:800;cursor:pointer;box-shadow:0 5px 12px rgba(112,30,27,.18);transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.staff-test-fill-btn:hover{transform:translateY(-1px);background:linear-gradient(135deg,#7b2520,#9a3b31);box-shadow:0 7px 15px rgba(112,30,27,.24)}
@media(max-width:620px){.staff-test-toolbar{align-items:stretch;flex-direction:column}.staff-test-copy{align-items:flex-start;flex-direction:column;gap:5px}.staff-test-fill-btn{width:100%}}
.tag-pharmacy-prepare{background:#f8e7e3;color:#7a241f;border:1px solid #dfb5ae}.tag-pharmacy-ship{background:#e2f2e9;color:#28664d;border:1px solid #b6d8c6}
.btn-pharmacy-prepare{background:linear-gradient(135deg,#6d1d1a,#8d3029);border-color:#6d1d1a;color:#fff}.btn-pharmacy-prepare:hover{background:linear-gradient(135deg,#7b2520,#9b3b31);border-color:#7b2520;color:#fff;box-shadow:0 7px 16px rgba(112,30,27,.22)}
.btn-pharmacy-ship{background:linear-gradient(135deg,#27634b,#3b8063);border-color:#27634b;color:#fff}.btn-pharmacy-ship:hover{background:linear-gradient(135deg,#2f7357,#479173);border-color:#2f7357;color:#fff;box-shadow:0 7px 16px rgba(39,99,75,.22)}

/* 药师抓药核对：放大处方内容，完成后再改变处方状态 */
.modal-box.prepare-rx-modal{width:min(1100px,94vw);max-width:1100px;max-height:92vh;padding-bottom:0;overflow:hidden}
.prepare-rx-modal>.prepare-rx-body,.prepare-rx-modal>.prepare-rx-footer{margin-left:0!important;margin-right:0!important}
.prepare-rx-body{max-height:calc(92vh - 150px);padding:4px 28px 26px;overflow-y:auto}
.prepare-rx-meta{display:flex;flex-wrap:wrap;gap:9px 26px;margin-bottom:16px;padding:13px 16px;border:1px solid #e3d5c3;border-radius:10px;background:#fbf5eb;color:#5b4b43;font-size:14px;line-height:1.7}
.prepare-rx-meta strong{color:var(--wine)}
.prepare-rx-panel{position:relative;min-height:310px;padding:72px 34px 34px;border:2px solid #4b4039;background:#fffdf9;box-shadow:inset 0 0 0 5px #fff,inset 0 0 0 6px #eadfce}
.prepare-rx-mark{position:absolute;top:18px;left:28px;color:#b22c28;font-family:Georgia,"Times New Roman",serif;font-size:34px;font-weight:800;line-height:1}
.prepare-rx-content{color:#271f1b;font-size:23px;font-weight:500;line-height:2.05;letter-spacing:.2px;white-space:pre-wrap;word-break:break-word}
.prepare-rx-extra{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.prepare-rx-extra-item{padding:11px 13px;border:1px solid #e4d8c8;border-radius:9px;background:#fffaf2;color:#554740;font-size:14px;line-height:1.6}
.prepare-rx-extra-item b{color:var(--wine);margin-right:6px}
.prepare-rx-footer{display:flex;justify-content:flex-end;gap:10px;padding:17px 28px 22px;border-top:1px solid var(--line);background:#fffdf8}
.prepare-rx-complete{min-width:150px;min-height:44px;font-size:16px;font-weight:800}
@media(max-width:768px){.prepare-rx-body{padding:2px 15px 18px}.prepare-rx-panel{min-height:260px;padding:62px 20px 24px}.prepare-rx-content{font-size:19px;line-height:1.85}.prepare-rx-extra{grid-template-columns:1fr}.prepare-rx-footer{padding:14px 15px 18px}.prepare-rx-complete{min-width:132px}}

/* 门店处方进度：品牌绿（已到达）+ 状态灰（未到达）双色流程 */
.rx-track-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.rx-track-list-toolbar .card-title{margin:0}.rx-track-title-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.rx-track-time-filter{min-width:96px;height:34px;padding:0 30px 0 12px;border:1px solid #d9c7ad;border-radius:9px;background:#fffaf2;color:#5f493e;font-family:inherit;font-size:12px;font-weight:800;outline:none;cursor:pointer}.rx-track-time-filter:focus{border-color:#b78637;box-shadow:0 0 0 3px rgba(183,134,55,.12)}.rx-track-bulk-actions{display:flex;align-items:center;gap:8px}.rx-track-bulk-btn{min-height:32px!important;padding:6px 11px!important;border-color:#ddcdb8!important;background:#fffaf2!important;color:#6c5545!important;font-size:11px!important}.rx-track-bulk-btn:hover{border-color:#c5a66e!important;background:#f8ecd9!important;color:#5f3427!important}
.rx-track-list{display:grid;gap:16px}
.rx-track-card{--flow-color:#7d3a31;--flow-soft:#f7e6e2;--flow-rgb:125,58,49;position:relative;isolation:isolate;overflow:hidden;padding:19px 21px 17px;border:1px solid #e0d1bc;border-radius:16px;background:radial-gradient(circle at 92% 0,rgba(var(--flow-rgb),.08),transparent 30%),linear-gradient(180deg,#fffefa,#fffaf2);box-shadow:0 8px 26px rgba(66,39,26,.08);cursor:default;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,padding .22s ease}
.rx-track-card:before{content:"";position:absolute;z-index:-1;inset:0 auto 0 0;width:5px;background:var(--flow-color)}
.rx-track-card:after{content:"泓";position:absolute;z-index:-1;right:18px;bottom:-34px;color:rgba(var(--flow-rgb),.035);font:900 104px/1 "Microsoft YaHei","微软雅黑",sans-serif;transform:rotate(-8deg)}
.rx-track-card:hover{transform:translateY(-3px);border-color:#ceb47e;box-shadow:0 15px 38px rgba(66,39,26,.14)}
.rx-track-card-approved{--flow-color:#a96e19;--flow-soft:#fff2d8;--flow-rgb:169,110,25}.rx-track-card-prepared{--flow-color:#765493;--flow-soft:#eee7f5;--flow-rgb:118,84,147}.rx-track-card-shipped{--flow-color:#326b8d;--flow-soft:#e5f0f6;--flow-rgb:50,107,141}.rx-track-card-received{--flow-color:#287056;--flow-soft:#e1f2e8;--flow-rgb:40,112,86;border-color:rgba(40,112,86,.44);background:radial-gradient(circle at 92% 0,rgba(40,112,86,.18),transparent 34%),linear-gradient(145deg,#f4fbf7,#e8f5ed);box-shadow:0 10px 28px rgba(40,112,86,.14)}.rx-track-card-received:before{width:6px;background:var(--flow-color)}.rx-track-card-received:hover{border-color:rgba(40,112,86,.66);box-shadow:0 16px 38px rgba(40,112,86,.20)}.rx-track-card-received .rx-track-head{padding:2px 4px 0 5px}.rx-track-card-received .rx-track-foot{border-top-color:rgba(40,112,86,.25)}.rx-track-card-rejected{--flow-color:#b43a31;--flow-soft:#fde7e4;--flow-rgb:180,58,49}
.rx-track-card-received .rx-flow-track{border-color:rgba(40,112,86,.27);background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(232,246,238,.90));box-shadow:inset 0 1px 0 #fff,0 5px 15px rgba(40,112,86,.08)}.rx-track-card-received .rx-track-foot{color:#547165}
.rx-track-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:15px;padding-left:3px;cursor:pointer}.rx-track-head:focus-visible{outline:3px solid rgba(var(--flow-rgb),.20);outline-offset:4px;border-radius:9px}
.rx-track-title{color:#3b2823;font-size:17px;font-weight:900;line-height:1.5}.rx-track-title strong{display:inline-block;margin-right:10px;color:#721f1b;letter-spacing:.3px}.rx-track-sub{margin-top:4px;color:#796960;font-size:13px}
.rx-track-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex:0 0 auto}.rx-track-toggle{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:7px 10px;border:1px solid rgba(var(--flow-rgb),.24);border-radius:999px;background:rgba(255,255,255,.78);color:var(--flow-color);font:800 11px/1 "Microsoft YaHei","微软雅黑",sans-serif;box-shadow:0 4px 11px rgba(var(--flow-rgb),.08);cursor:pointer;transition:.18s}.rx-track-toggle:hover{border-color:rgba(var(--flow-rgb),.46);background:#fff;box-shadow:0 7px 15px rgba(var(--flow-rgb),.13)}.rx-track-toggle-chevron{width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(225deg);transition:transform .2s ease}
.rx-track-status{position:relative;flex:0 0 auto;padding:8px 14px 8px 29px;border:1px solid rgba(var(--flow-rgb),.30);border-radius:999px;background:linear-gradient(135deg,#fff,var(--flow-soft));color:var(--flow-color);font-size:13px;font-weight:900;box-shadow:0 4px 12px rgba(var(--flow-rgb),.10);animation:rxStatusBreathe 2.5s ease-in-out infinite}
.rx-track-status:before{content:"";position:absolute;left:12px;top:50%;width:8px;height:8px;border-radius:50%;background:var(--flow-color);box-shadow:0 0 0 4px rgba(var(--flow-rgb),.12);transform:translateY(-50%)}
.rx-flow-track{position:relative;display:grid;grid-template-columns:repeat(5,minmax(108px,1fr));align-items:start;overflow-x:auto;padding:30px 12px 10px;border:1px solid #e4ddd4;border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(249,247,243,.92));box-shadow:inset 0 1px 0 #fff,0 5px 15px rgba(61,48,40,.05);scrollbar-width:thin;scrollbar-color:#c9c4bd transparent}
.rx-flow-track:before{content:"";position:absolute;left:18px;right:18px;top:0;height:2px;background:linear-gradient(90deg,transparent,rgba(40,112,86,.52),transparent);opacity:.78}
.rx-flow-step{--step-color:#287056;--step-soft:#e7f3ed;--step-rgb:40,112,86;position:relative;min-width:0;text-align:center}
.rx-flow-step:not(:last-child):after{content:"";position:absolute;z-index:0;left:calc(50% + 23px);top:21px;width:calc(100% - 46px);height:3px;border-radius:99px;background:#d8d6d2;box-shadow:0 1px 0 rgba(255,255,255,.9);opacity:1}
.rx-flow-step.completed:not(:last-child):after{background:var(--flow-color);box-shadow:0 0 0 1px rgba(var(--flow-rgb),.06),0 2px 7px rgba(var(--flow-rgb),.18)}
.rx-flow-node{position:relative;z-index:1;display:flex;width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;font:inherit;flex-direction:column;align-items:center;cursor:pointer;-webkit-tap-highlight-color:transparent}
.rx-flow-node:after{content:attr(data-tip);position:absolute;z-index:4;top:-24px;left:50%;padding:4px 8px;border:1px solid rgba(40,112,86,.22);border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 5px 13px rgba(45,58,50,.12);color:#287056;font-size:9px;font-weight:900;line-height:1;white-space:nowrap;opacity:0;pointer-events:none;transform:translate(-50%,5px);transition:opacity .18s ease,transform .18s ease}
.rx-flow-seal{position:relative;display:grid;place-items:center;width:44px;height:44px;border:2px solid #d4d1cc;border-radius:50%;background:linear-gradient(145deg,#faf9f7,#eeece8);box-shadow:0 4px 10px rgba(62,55,49,.08),inset 0 0 0 4px rgba(255,255,255,.62);color:#aaa49d;transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s ease,border-color .2s ease,filter .2s ease}
.rx-flow-seal:before{content:"";position:absolute;inset:5px;border:1px solid currentColor;border-radius:50%;opacity:.22}
.rx-flow-icon{position:relative;z-index:1;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.rx-flow-label{display:inline-flex;align-items:center;justify-content:center;min-height:25px;margin-top:7px;padding:3px 8px;border:1px solid transparent;border-radius:999px;color:#918c86;font-size:11px;font-weight:800;line-height:1.3;white-space:nowrap}
.rx-flow-state-note{min-height:15px;margin-top:2px;color:#aaa59f;font-size:9px;font-weight:800;letter-spacing:.4px}
.rx-flow-step.future .rx-flow-seal{border-color:#d4d1cc;background:linear-gradient(145deg,#faf9f7,#eceae6);color:#aaa49d}.rx-flow-step.future .rx-flow-label,.rx-flow-step.future .rx-flow-state-note{color:#9d9892}
.rx-flow-step.completed .rx-flow-seal{border-color:var(--flow-color);background:linear-gradient(145deg,rgba(255,255,255,.20),rgba(0,0,0,.06)),var(--flow-color);color:#fff;box-shadow:0 6px 14px rgba(var(--flow-rgb),.24),inset 0 0 0 5px rgba(255,255,255,.11)}.rx-flow-step.completed .rx-flow-label,.rx-flow-step.completed .rx-flow-state-note{color:var(--flow-color)}.rx-flow-step.completed .rx-flow-node:after{border-color:rgba(var(--flow-rgb),.25);color:var(--flow-color)}
.rx-flow-step.current .rx-flow-seal{border:2px solid var(--flow-color);background:linear-gradient(145deg,#fff,var(--flow-soft));color:var(--flow-color);box-shadow:0 0 0 4px rgba(var(--flow-rgb),.12),0 7px 16px rgba(var(--flow-rgb),.24);animation:rxSealBreathe 2.35s ease-in-out infinite}.rx-flow-step.current .rx-flow-seal:after{content:"";position:absolute;inset:-8px;border:1px solid rgba(var(--flow-rgb),.24);border-radius:50%;animation:rxRingBreathe 2.35s ease-in-out infinite}.rx-flow-step.current .rx-flow-label{border-color:rgba(var(--flow-rgb),.28);background:var(--flow-soft);color:var(--flow-color);font-weight:900;box-shadow:0 3px 8px rgba(var(--flow-rgb),.12)}.rx-flow-step.current .rx-flow-state-note{color:var(--flow-color)}.rx-flow-step.current .rx-flow-node:after{border-color:rgba(var(--flow-rgb),.25);color:var(--flow-color)}.rx-track-card-received .rx-flow-step.current .rx-flow-seal{border-color:#287056;background:linear-gradient(145deg,#33836a,#205d47);color:#fff;box-shadow:0 0 0 4px rgba(40,112,86,.13),0 7px 17px rgba(40,112,86,.28),inset 0 0 0 4px rgba(255,255,255,.12)}
.rx-flow-step:hover:not(:last-child):after,.rx-flow-step:focus-within:not(:last-child):after{filter:saturate(1.2) brightness(1.02)}.rx-flow-step.completed:hover:not(:last-child):after,.rx-flow-step.completed:focus-within:not(:last-child):after{box-shadow:0 0 0 1px rgba(var(--flow-rgb),.08),0 3px 10px rgba(var(--flow-rgb),.22)}
.rx-flow-node:hover:after,.rx-flow-node:focus-visible:after{opacity:1;transform:translate(-50%,0)}
.rx-flow-node:hover .rx-flow-seal,.rx-flow-node:focus-visible .rx-flow-seal,.rx-flow-node.is-selected .rx-flow-seal{transform:translateY(-3px) scale(1.09);filter:brightness(1.04);box-shadow:0 0 0 5px rgba(40,112,86,.10),0 11px 23px rgba(40,112,86,.25),inset 0 0 0 4px rgba(255,255,255,.10)}
.rx-flow-step.current .rx-flow-node:hover .rx-flow-seal,.rx-flow-step.current .rx-flow-node:focus-visible .rx-flow-seal,.rx-flow-step.current .rx-flow-node.is-selected .rx-flow-seal{animation:none}
.rx-flow-step.current .rx-flow-node:hover .rx-flow-seal,.rx-flow-step.current .rx-flow-node:focus-visible .rx-flow-seal,.rx-flow-step.current .rx-flow-node.is-selected .rx-flow-seal{box-shadow:0 0 0 5px rgba(var(--flow-rgb),.13),0 11px 23px rgba(var(--flow-rgb),.28),inset 0 0 0 4px rgba(255,255,255,.12)}
.rx-flow-step.completed .rx-flow-node:hover .rx-flow-seal,.rx-flow-step.completed .rx-flow-node:focus-visible .rx-flow-seal,.rx-flow-step.completed .rx-flow-node.is-selected .rx-flow-seal{box-shadow:0 0 0 5px rgba(var(--flow-rgb),.11),0 11px 23px rgba(var(--flow-rgb),.26),inset 0 0 0 4px rgba(255,255,255,.12)}
.rx-flow-step.future .rx-flow-node:hover .rx-flow-seal,.rx-flow-step.future .rx-flow-node:focus-visible .rx-flow-seal,.rx-flow-step.future .rx-flow-node.is-selected .rx-flow-seal{border-color:#b99c70;color:#89785f;box-shadow:0 0 0 5px rgba(185,156,112,.11),0 10px 21px rgba(95,76,51,.14),inset 0 0 0 4px rgba(255,255,255,.62)}
.rx-flow-node:hover .rx-flow-label,.rx-flow-node:focus-visible .rx-flow-label,.rx-flow-node.is-selected .rx-flow-label{border-color:rgba(40,112,86,.22);background:#eef7f2;color:#287056;box-shadow:0 3px 8px rgba(40,112,86,.08)}
.rx-flow-step.current .rx-flow-node:hover .rx-flow-label,.rx-flow-step.current .rx-flow-node:focus-visible .rx-flow-label,.rx-flow-step.current .rx-flow-node.is-selected .rx-flow-label{border-color:rgba(var(--flow-rgb),.32);background:var(--flow-soft);color:var(--flow-color);box-shadow:0 3px 9px rgba(var(--flow-rgb),.14)}
.rx-flow-step.completed .rx-flow-node:hover .rx-flow-label,.rx-flow-step.completed .rx-flow-node:focus-visible .rx-flow-label,.rx-flow-step.completed .rx-flow-node.is-selected .rx-flow-label{border-color:rgba(var(--flow-rgb),.28);background:var(--flow-soft);color:var(--flow-color);box-shadow:0 3px 9px rgba(var(--flow-rgb),.12)}
.rx-flow-step.future .rx-flow-node:hover .rx-flow-label,.rx-flow-step.future .rx-flow-node:focus-visible .rx-flow-label,.rx-flow-step.future .rx-flow-node.is-selected .rx-flow-label{border-color:rgba(185,156,112,.28);background:#fbf6ed;color:#77664e}
.rx-flow-node.is-selected:after{content:"正在查看";opacity:1;transform:translate(-50%,0)}
.rx-stage-detail{--detail-color:#287056;--detail-soft:#e6f3eb;--detail-rgb:40,112,86;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;max-height:0;margin-top:0;padding:0 15px;border:0 solid transparent;border-radius:12px;background:linear-gradient(135deg,var(--detail-soft),#fffdf8);box-shadow:none;opacity:0;overflow:hidden;transform:translateY(-5px);transition:max-height .28s ease,margin .28s ease,padding .28s ease,opacity .2s ease,transform .28s ease,border-color .28s ease,box-shadow .28s ease,background .28s ease}
.rx-stage-detail.state-current{--detail-color:var(--flow-color);--detail-soft:var(--flow-soft);--detail-rgb:var(--flow-rgb)}.rx-stage-detail.state-future{--detail-color:#837b73;--detail-soft:#f0ede9;--detail-rgb:131,123,115}
.rx-stage-detail.is-open{max-height:180px;margin-top:10px;padding:12px 15px;border-width:1px;border-color:rgba(var(--detail-rgb),.28);box-shadow:0 6px 18px rgba(var(--detail-rgb),.11);opacity:1;transform:translateY(0)}
.rx-stage-detail.is-logistics{display:block}
.rx-stage-detail.is-open.is-logistics{max-height:1600px;padding:14px 15px 15px}
.rx-inline-logistics{min-width:0}.rx-inline-logistics-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:1px 1px 11px;border-bottom:1px dashed rgba(var(--detail-rgb),.24)}.rx-inline-logistics-title{display:flex;align-items:center;gap:10px;min-width:0}.rx-inline-logistics-title-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid rgba(var(--detail-rgb),.30);border-radius:50%;background:var(--detail-soft);color:var(--detail-color);box-shadow:0 0 0 5px rgba(var(--detail-rgb),.08)}.rx-inline-logistics-title-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2}.rx-inline-logistics-title-copy{min-width:0}.rx-inline-logistics-title-copy b{display:block;color:#3e3029;font-size:13px}.rx-inline-logistics-title-copy span{display:block;margin-top:3px;color:#7b6d64;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rx-inline-logistics-head-actions{display:flex;align-items:center;gap:9px;flex:0 0 auto}.rx-inline-logistics-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}.rx-inline-logistics-meta span{min-width:0;padding:9px 11px;border:1px solid #e4ddd2;border-radius:10px;background:rgba(255,255,255,.76)}.rx-inline-logistics-meta em{display:block;color:#9a8b82;font-size:9px;font-style:normal}.rx-inline-logistics-meta strong{display:block;margin-top:3px;color:#504139;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rx-inline-logistics-progress{margin-top:8px;padding:3px 5px 5px;border-radius:11px;background:rgba(255,255,255,.56)}.rx-inline-logistics-events{margin-top:10px;padding-top:10px;border-top:1px dashed rgba(var(--detail-rgb),.24)}.rx-inline-logistics-events-title{display:flex;align-items:center;justify-content:space-between;color:#514139;font-size:11px;font-weight:900}.rx-inline-logistics-events-title span{color:#8e7e74;font-size:9px;font-weight:700}.rx-inline-logistics .logistics-event-list{gap:8px;margin-top:8px!important}.rx-inline-logistics .logistics-event{padding-top:9px;padding-bottom:9px;background:rgba(255,255,255,.72)}.rx-inline-logistics .logistics-event-empty{padding:18px}.rx-inline-logistics .rx-stage-detail-close{flex:0 0 auto}
.rx-inline-logistics{--order-color:var(--detail-color);--order-soft:var(--detail-soft);--order-rgb:var(--detail-rgb)}
.rx-inline-logistics .logistics-node.active:not(:last-child):after{background:var(--detail-color);box-shadow:0 1px 5px rgba(var(--detail-rgb),.18)}
.rx-inline-logistics .logistics-node.active .ln-dot{border-color:var(--detail-color);background:linear-gradient(145deg,#4f88a8,var(--detail-color));color:#fff;box-shadow:0 4px 11px rgba(var(--detail-rgb),.22)}
.rx-inline-logistics .logistics-node.active .ln-label,.rx-inline-logistics .logistics-node.active .ln-note{color:var(--detail-color);font-weight:900}
.rx-inline-logistics .logistics-event:not(.exception):before{background:var(--detail-color);box-shadow:0 0 0 4px rgba(var(--detail-rgb),.12)}
.rx-stage-detail-icon{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(var(--detail-rgb),.30);border-radius:50%;background:var(--detail-soft);color:var(--detail-color);box-shadow:0 0 0 5px rgba(var(--detail-rgb),.08)}.rx-stage-detail-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.rx-stage-detail-copy{min-width:0}.rx-stage-detail-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.rx-stage-detail-head b{color:#3e3029;font-size:13px}.rx-stage-detail-badge{padding:3px 7px;border-radius:999px;background:var(--detail-soft);color:var(--detail-color);font-size:9px;font-weight:900;box-shadow:inset 0 0 0 1px rgba(var(--detail-rgb),.10)}
.rx-stage-detail-meta{display:flex;align-items:center;gap:10px 18px;margin-top:5px;flex-wrap:wrap;color:#75675e;font-size:10px;line-height:1.55}.rx-stage-detail-meta span{display:inline-flex;align-items:center;gap:5px}.rx-stage-detail-meta em{color:#9b8d84;font-style:normal}.rx-stage-detail-meta strong{color:#55453d;font-weight:800}.rx-stage-detail-desc{margin-top:4px;color:#6f625a;font-size:10px;line-height:1.55}
.rx-stage-detail-close{display:grid;place-items:center;width:27px;height:27px;padding:0;border:1px solid #e1d7cb;border-radius:50%;background:#fff;color:#8d7c72;font-size:17px;line-height:1;cursor:pointer;transition:.18s}.rx-stage-detail-close:hover{border-color:#c9aa78;background:#fff8ec;color:#6f4c25;transform:rotate(8deg)}
.rx-flow-rejected{display:flex;align-items:center;gap:14px;min-height:84px;padding:14px 18px;border:1px solid #e7b7b1;border-radius:13px;background:radial-gradient(circle at 90% 10%,rgba(180,58,49,.09),transparent 30%),linear-gradient(135deg,#fff7f5,#fdebea);color:#b43a31;box-shadow:0 5px 16px rgba(180,58,49,.08)}
.rx-reject-seal{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border:2px solid #b43a31;border-radius:50%;background:#fff;color:#b43a31;box-shadow:0 0 0 6px rgba(180,58,49,.08);animation:rxSealBreathe 2.35s ease-in-out infinite}.rx-reject-seal svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2}.rx-reject-copy{display:flex;flex:1;flex-direction:column;gap:3px;text-align:left}.rx-reject-copy b{font-size:15px}.rx-reject-copy span{color:#8e5f5a;font-size:12px;font-weight:600}.rx-reject-state{padding:5px 9px;border-radius:99px;background:#b43a31;color:#fff;font-size:11px;font-weight:800}
.rx-track-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px;padding:12px 2px 0;border-top:1px dashed #e1d4c2;color:#77675e;font-size:12px}
.rx-track-foot-left{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.rx-track-detail-hint{color:var(--flow-color);font-weight:900}.rx-track-actions{display:flex;align-items:center;gap:10px}
.rx-track-collapsed-summary{display:none;align-items:center;justify-content:space-between;gap:14px;padding:8px 3px 0;border-top:1px dashed rgba(var(--flow-rgb),.24);color:#75675e;font-size:11px;cursor:pointer}.rx-track-collapsed-meta{display:flex;align-items:center;gap:7px 15px;min-width:0;flex-wrap:wrap}.rx-track-collapsed-meta span{white-space:nowrap}.rx-track-collapsed-logistics{max-width:520px;overflow:hidden;color:var(--flow-color);font-weight:800;text-overflow:ellipsis}.rx-track-collapsed-actions{display:flex;align-items:center;gap:7px;flex:0 0 auto}.rx-track-card.is-collapsed{min-height:104px;padding:14px 18px 12px}.rx-track-card.is-collapsed .rx-track-head{align-items:center;margin-bottom:7px;padding-left:3px}.rx-track-card.is-collapsed .rx-track-sub{max-width:720px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rx-track-card.is-collapsed .rx-flow-track,.rx-track-card.is-collapsed .rx-stage-detail,.rx-track-card.is-collapsed .rx-track-foot{display:none}.rx-track-card.is-collapsed .rx-track-collapsed-summary{display:flex;animation:rxCollapsedReveal .2s ease both}.rx-track-card.is-collapsed .rx-track-toggle-chevron{transform:rotate(45deg) translate(-1px,-1px)}.rx-track-card.is-collapsed:after{right:12px;bottom:-24px;font-size:74px}.rx-track-card.is-collapsed:hover{transform:translateY(-2px)}
@keyframes rxSealBreathe{0%,100%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.075);filter:brightness(1.06)}}
@keyframes rxRingBreathe{0%,100%{transform:scale(.92);opacity:.28}50%{transform:scale(1.18);opacity:.70}}
@keyframes rxStatusBreathe{0%,100%{box-shadow:0 4px 12px rgba(var(--flow-rgb),.10)}50%{box-shadow:0 5px 18px rgba(var(--flow-rgb),.27)}}
@keyframes rxCollapsedReveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.rx-track-card.is-collapsed .rx-flow-rejected{display:none}
.rx-track-card-rejected{--flow-color:#b92f29;--flow-soft:#fbdedb;--flow-rgb:185,47,41;border:1.5px solid rgba(185,47,41,.60);background:radial-gradient(circle at 91% 0,rgba(185,47,41,.20),transparent 35%),linear-gradient(135deg,#fff3f1 0%,#f9deda 56%,#fff0ed 100%);box-shadow:0 10px 28px rgba(185,47,41,.16)}
.rx-track-card-rejected:before{width:7px;background:#b92f29}.rx-track-card-rejected:hover{border-color:rgba(185,47,41,.82);box-shadow:0 16px 38px rgba(185,47,41,.23)}
.rx-track-card-rejected .rx-track-head{border-bottom-color:rgba(185,47,41,.20)}.rx-track-card-rejected .rx-track-collapsed-summary{border-top-color:rgba(185,47,41,.28)}
.rx-track-card-rejected .rx-track-status{border-color:rgba(185,47,41,.55);background:linear-gradient(135deg,#fff7f5,#ffd8d4);color:#a92722;animation:rxRejectedStatusBreathe 1.75s ease-in-out infinite}
.rx-track-card-rejected .rx-track-status:before{background:#c33730;box-shadow:0 0 0 4px rgba(195,55,48,.16)}
.rx-flow-rejected[role="button"]{cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}
.rx-flow-rejected[role="button"]:hover{border-color:#cf625a;background:radial-gradient(circle at 90% 10%,rgba(180,58,49,.14),transparent 31%),linear-gradient(135deg,#fff4f2,#fbdedb);box-shadow:0 9px 22px rgba(180,58,49,.16);transform:translateY(-1px)}
.rx-flow-rejected[role="button"]:focus-visible{outline:3px solid rgba(180,58,49,.24);outline-offset:3px}
@keyframes rxRejectedStatusBreathe{0%,100%{transform:scale(1);box-shadow:0 4px 12px rgba(185,47,41,.16)}50%{transform:scale(1.045);box-shadow:0 0 0 6px rgba(185,47,41,.10),0 8px 22px rgba(185,47,41,.34)}}
@media(prefers-reduced-motion:reduce){.rx-track-status,.rx-flow-step.current .rx-flow-seal,.rx-flow-step.current .rx-flow-seal:after,.rx-reject-seal{animation:none}.rx-flow-seal,.rx-stage-detail,.rx-flow-node:after{transition:none}}
@media(max-width:768px){.rx-track-list-toolbar{align-items:flex-start;flex-direction:column}.rx-track-card{padding:16px 13px 14px}.rx-track-card.is-collapsed{padding:13px 13px 11px}.rx-track-head{gap:10px;padding-left:2px}.rx-track-head-actions{align-items:flex-end;flex-direction:column}.rx-track-title{font-size:15px}.rx-track-status{padding:7px 10px 7px 25px;font-size:11px}.rx-track-status:before{left:9px}.rx-track-toggle{min-height:30px;padding:6px 8px}.rx-track-collapsed-summary{align-items:flex-start;flex-direction:column}.rx-track-collapsed-actions{width:100%;justify-content:flex-end}.rx-flow-track{grid-template-columns:repeat(5,112px);padding-left:7px;padding-right:7px}.rx-flow-step:not(:last-child):after{left:79px;width:66px}.rx-stage-detail{grid-template-columns:auto minmax(0,1fr) auto}.rx-stage-detail.is-open{max-height:240px}.rx-stage-detail.is-open.is-logistics{max-height:1800px}.rx-stage-detail-meta{align-items:flex-start;flex-direction:column;gap:2px}.rx-inline-logistics-meta{grid-template-columns:1fr}.rx-inline-logistics-head{align-items:flex-start}.rx-inline-logistics-head-actions{align-items:flex-end;flex-direction:column}.rx-inline-logistics-progress{overflow-x:auto}.rx-inline-logistics-progress .logistics-timeline{min-width:480px}.rx-track-foot{align-items:flex-start;flex-direction:column}.rx-track-actions{width:100%;justify-content:space-between}}

/* 弹窗、物流、提示 */
#detail-modal,#print-modal{background:rgba(31,20,18,.58)!important;backdrop-filter:blur(4px)}
.modal-box,.print-modal{background:#fffdf8;border:0;border-radius:18px;padding:0;box-shadow:0 28px 80px rgba(46,17,14,.30);max-width:820px}
.modal-header,.print-modal-header{position:sticky;top:0;z-index:2;margin:0 0 18px;padding:19px 22px;border-bottom:1px solid var(--line);background:#fffdf8;border-radius:18px 18px 0 0;font-size:20px;color:#402823;font-weight:800}
.modal-box>.card,.modal-box>.detail-item,.modal-box>p,.modal-box>div:not(.modal-header),.modal-box>button,.modal-box>label{margin-left:22px;margin-right:22px}
.modal-box{padding-bottom:22px}
.modal-close{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#f1ebe2;color:#6a5e56;line-height:1;font-size:23px}
.modal-close:hover{background:#eadfd4;color:var(--wine)}
.delete-archive-confirm{display:flex;align-items:flex-start;gap:15px;padding:7px 2px 5px}.delete-archive-icon{display:grid;place-items:center;flex:0 0 50px;width:50px;height:50px;border-radius:50%;background:#fde6e2;color:#ad342d;box-shadow:inset 0 0 0 1px #efc4bf;font-size:24px;font-weight:900}.delete-archive-copy{flex:1;min-width:0}.delete-archive-copy b{display:block;margin-bottom:6px;color:#4c2824;font-size:17px}.delete-archive-copy p{margin:0;color:#77645c;font-size:13px;line-height:1.75}.delete-archive-warning{margin-top:14px;padding:11px 13px;border:1px solid #edc7c2;border-radius:9px;background:#fff2f0;color:#a13b34;font-size:12px;font-weight:700;line-height:1.65}
.approve-confirm-icon{display:grid;place-items:center;flex:0 0 50px;width:50px;height:50px;border-radius:50%;background:#e0f2e8;color:#287056;box-shadow:inset 0 0 0 1px #b9dcc9;font-size:23px;font-weight:900}
.doctor-suggestion-section{scroll-margin:24px;transition:border-color .22s ease,box-shadow .22s ease,background .22s ease}.doctor-suggestion-section.suggestion-attention{border-color:#a86d24!important;background:#fffaf0!important;box-shadow:0 0 0 4px rgba(181,139,66,.18),0 10px 26px rgba(91,52,29,.12);animation:suggestionAttention 1.15s ease-in-out 2}.reject-suggestion-preview{margin-top:12px;padding:12px 14px;border:1px solid #e5d5bd;border-radius:9px;background:#fffaf2;color:#4f4038;font-size:13px;line-height:1.75;white-space:pre-wrap;word-break:break-word}.reject-suggestion-preview b{display:block;margin-bottom:4px;color:var(--wine);font-size:13px}.reject-confirm-note{margin-top:13px;color:#9d3a33;font-size:12px;font-weight:800;line-height:1.65}@keyframes suggestionAttention{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
.toast{top:auto;right:22px;bottom:22px;padding:13px 18px;border-radius:11px;background:#34231f;color:#fff;box-shadow:0 12px 34px rgba(0,0,0,.24);font-size:14px;font-weight:700}
.logistics-card{background:#fffaf2;border:1px solid var(--border);border-radius:11px;padding:14px}.logistics-node.current .ln-dot{background:var(--wine);border-color:var(--wine)}.logistics-node.current .ln-label{color:var(--wine)}

/* 处方笺保留传统辨识度，外层现代化 */
.rx-paper{background:#fffdf8;border:1px solid #c7ad75;border-radius:8px;box-shadow:inset 0 0 0 5px #fff,inset 0 0 0 6px #e0cfaa;padding:32px}
.rx-paper-header h2{color:var(--wine)}
.a5-clinical-paper{max-width:1040px;margin:0 auto;padding:30px;background:#fffdf9;border-color:#d2b994;box-shadow:inset 0 0 0 5px #fff,inset 0 0 0 6px #eadcc7}
.a5-clinical-paper .rx-paper-header{border-bottom:3px solid #731f1c;padding-bottom:15px;margin-bottom:19px}
.a5-clinical-paper .rx-paper-header h2{margin-bottom:7px;font-family:inherit;letter-spacing:.2px;color:var(--wine);font-size:28px;font-weight:800}
.a5-clinical-paper .rx-paper-header .sub{color:#826d62;font-family:"Microsoft YaHei","PingFang SC","Source Han Sans SC",sans-serif;letter-spacing:.8px}
.a5-heading-copy{min-width:0}.a5-brand-seal,.a5-record-kind{display:none}
.a5-test-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 16px;padding:11px 13px;border:1px dashed #c9a15f;border-radius:10px;background:linear-gradient(90deg,#fff7e8,#fffdf7);box-shadow:0 4px 12px rgba(92,48,24,.05)}
.a5-test-toolbar-copy{display:flex;align-items:center;gap:9px;min-width:0}.a5-test-toolbar-copy b{flex:0 0 auto;padding:3px 8px;border-radius:99px;background:#7a2520;color:#fff9e9;font-size:11px;letter-spacing:.5px}.a5-test-toolbar-copy span{color:#806c5d;font-size:12px}
.a5-test-fill-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto;min-height:36px;padding:7px 14px;border:1px solid #6f1e1b;border-radius:8px;background:linear-gradient(135deg,#6d1d1a,#8d3029);color:#fffdf6;font-family:"Microsoft YaHei","微软雅黑",sans-serif;font-size:13px;font-weight:800;cursor:pointer;box-shadow:0 5px 12px rgba(112,30,27,.18);transition:.16s}.a5-test-fill-btn:hover{transform:translateY(-1px);background:linear-gradient(135deg,#7b2520,#9a3b31);box-shadow:0 7px 15px rgba(112,30,27,.24)}
.a5-section{margin:15px 0;border:1px solid #ddcbbb;border-radius:11px;overflow:hidden;background:#fff}
.a5-section-title{padding:10px 14px;border-bottom:1px solid #e6d6ca;background:linear-gradient(90deg,#f1e1d9,#f8eee7);color:#641f1b;font-family:"Microsoft YaHei","微软雅黑",sans-serif;font-size:17px;font-weight:800;letter-spacing:0}
.a5-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.a5-prescription-fields{grid-template-columns:repeat(3,minmax(0,1fr))}
.a5-field{display:flex;align-items:center;gap:7px;min-height:50px;padding:9px 12px;border-right:1px solid #eadfd8;border-bottom:1px solid #eadfd8;min-width:0}
.a5-field.span-2{grid-column:span 2}.a5-field.span-3{grid-column:span 3}.a5-field.span-4{grid-column:1/-1}.a5-field:nth-last-child(-n+4){border-bottom-color:#eadfd8}
.a5-field label{color:#532b27;font-size:13px;font-weight:800;white-space:nowrap}
.a5-field input,.a5-field select,.a5-textarea{min-width:0;flex:1;border:0;border-bottom:1px solid #c9b4aa;background:transparent;color:#342a26;outline:none;padding:6px 4px;font-size:13px}
.a5-field input:focus,.a5-field select:focus,.a5-textarea:focus{border-bottom-color:var(--wine);box-shadow:0 2px 0 rgba(115,31,28,.10)}
.a5-unit{font-size:12px;color:#81756c;white-space:nowrap}
.a5-question-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.a5-question{padding:12px 14px;border-right:1px solid #eadfd8;border-bottom:1px solid #eadfd8;display:grid;grid-template-columns:76px 1fr;align-items:start;gap:8px;min-height:52px}
.a5-question:nth-child(even){border-right:0}.a5-question b{font-size:13px;color:#5b2925;padding-top:2px}
.a5-checks{display:flex;align-items:center;flex-wrap:wrap;gap:7px 13px}
.a5-chronic-checks{gap:8px}.a5-choice-set{display:inline-flex;align-items:center;flex-wrap:wrap;gap:7px}.a5-choice-set[hidden]{display:none!important}.a5-medication-choice:before{content:"";width:1px;height:20px;margin:0 2px;background:#ddcfc5}
.a5-check{display:inline-flex;align-items:center;gap:5px;color:#5f544d;font-size:13px;cursor:pointer;white-space:nowrap}
.a5-check input{width:16px;height:16px;accent-color:var(--wine);margin:0}
.a5-block{padding:13px 14px;border-bottom:1px solid #eadfd8}.a5-block:last-child{border-bottom:0}
.a5-block label{display:block;margin-bottom:7px;color:#5b2925;font-size:13px;font-weight:800}
.a5-textarea{width:100%;min-height:76px;resize:vertical;line-height:1.7;border:1px solid #dfcec4;border-radius:8px;padding:9px 10px;background:#fffdfa}
.a5-textarea.tall{min-height:170px;font-size:14px;line-height:1.9}
.a5-signature{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;align-items:center;padding:12px 14px}
.a5-date{display:flex;align-items:center;justify-content:flex-end;gap:5px;color:#564941;font-size:13px;flex-wrap:wrap}
.a5-date input{width:46px;border:0;border-bottom:1px solid #666;text-align:center;background:transparent;outline:none;padding:4px}
.a5-date input:nth-of-type(2),.a5-date input:nth-of-type(3){width:34px}
.a5-view{margin-top:14px;border:1px solid #dfcec4;border-radius:10px;overflow:hidden}.a5-view-row{display:grid;grid-template-columns:145px 1fr;border-bottom:1px solid #eee2da}.a5-view-row:last-child{border-bottom:0}.a5-view-row b{padding:9px 12px;background:#f5e8e1;color:#68231f;font-size:12px}.a5-view-row span{padding:9px 12px;color:#54423b;font-size:13px;white-space:pre-wrap;line-height:1.6}

/* 合作门店 · 接诊开方专属视觉（不影响中央医生开方页） */
.clinical-entry-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:1040px;margin:clamp(30px,7vh,76px) auto;padding:0 8px}
.clinical-entry-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:340px;padding:36px;border:1px solid #dfcdb7;border-radius:24px;background:radial-gradient(circle at 100% 0,rgba(194,154,80,.15),transparent 50%),#fffdf8;box-shadow:0 15px 38px rgba(73,29,20,.08);text-align:left;font-family:"Microsoft YaHei","微软雅黑",sans-serif;color:#5f1b19;cursor:pointer;overflow:hidden;transition:transform .22s,box-shadow .22s,border-color .22s}
.clinical-entry-card.manual{background:radial-gradient(circle at 100% 0,rgba(115,31,28,.07),transparent 50%),#fffdf8}
.clinical-entry-card:after{content:"";position:absolute;right:-38px;top:-42px;width:160px;height:160px;border:1px solid rgba(194,154,80,.17);border-radius:50%;box-shadow:0 0 0 22px rgba(194,154,80,.04),0 0 0 44px rgba(194,154,80,.025);pointer-events:none}
.clinical-entry-card:hover{transform:translateY(-5px);border-color:#b38b4b;box-shadow:0 23px 45px rgba(73,29,20,.13)}
.clinical-entry-card:focus-visible{outline:3px solid #b38b4b;outline-offset:5px}
.clinical-entry-icon{display:grid;place-items:center;width:76px;height:76px;margin-bottom:30px;border:1px solid #e3cb9f;border-radius:21px;background:#f6ead3;color:#8c5e26}
.manual .clinical-entry-icon{border-color:#e1c5bf;background:#f5e6e1;color:#731f1c}
.clinical-entry-icon .ui-icon{width:35px;height:35px;margin:0}
.clinical-entry-card strong{display:block;font-size:27px;font-weight:800;letter-spacing:1px;line-height:1.5}
.clinical-entry-desc{display:block;margin-top:10px;color:#85736a;font-size:16px;line-height:1.8}
.clinical-entry-action{display:flex;align-items:center;justify-content:space-between;align-self:stretch;margin-top:auto;padding-top:30px;color:#79501d;font-size:15px;font-weight:800}
.manual .clinical-entry-action{color:#731f1c}.clinical-entry-action svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;transition:transform .22s}.clinical-entry-card:hover .clinical-entry-action svg{transform:translateX(5px)}
.clinical-entry-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:16px}.clinical-entry-toolbar .btn{background:#fffaf2;border-color:#deccb0;color:#6b342a}
.clinical-entry-section[hidden]{display:none!important}
.clinical-entry-toolbar .btn[hidden]{display:none!important}
@media(max-width:760px){.clinical-entry-picker{grid-template-columns:1fr;gap:20px;margin:26px auto}.clinical-entry-card{min-height:265px;padding:26px}.clinical-entry-icon{width:60px;height:60px;margin-bottom:22px}.clinical-entry-card strong{font-size:24px}}
@media(prefers-reduced-motion:reduce){.clinical-entry-card,.clinical-entry-action svg{transition:none}.clinical-entry-card:hover{transform:none}}
.partner-rx-hero{position:relative;isolation:isolate;overflow:hidden;margin-bottom:18px;padding:27px 30px 24px;border:1px solid #e2cfaa;border-radius:18px;background:radial-gradient(circle at 88% 18%,rgba(181,139,66,.20),transparent 29%),linear-gradient(135deg,#fffdf8 0%,#fbf3e5 58%,#f4e4ca 100%);box-shadow:0 14px 34px rgba(83,37,24,.09)}
.partner-rx-hero:after{content:"泓";position:absolute;z-index:-1;right:26px;bottom:-42px;color:rgba(115,31,28,.055);font:900 142px/1 "Microsoft YaHei","微软雅黑",sans-serif;transform:rotate(-7deg)}
.partner-rx-kicker{display:inline-flex;align-items:center;margin-bottom:10px;padding:5px 10px;border:1px solid #dec38c;border-radius:99px;background:rgba(255,252,245,.80);color:#79501d;font-size:12px;font-weight:800;letter-spacing:1px}
.partner-rx-hero .page-title{margin-bottom:7px;color:#5f1b19;font-family:"Microsoft YaHei","微软雅黑","PingFang SC",sans-serif;font-size:30px;font-weight:900;letter-spacing:3px}
.partner-rx-hero .page-sub{margin-bottom:20px;color:#716159;font-family:"Microsoft YaHei","PingFang SC","Source Han Sans SC",sans-serif;font-size:14px}
.clinical-photo-hero{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.clinical-photo-hero>.clinical-entry-toolbar{margin:0 0 0 auto;justify-content:flex-end;flex-wrap:wrap}
.partner-rx-steps{display:flex;align-items:center;max-width:690px;padding:11px 14px;border:1px solid rgba(222,195,140,.72);border-radius:12px;background:rgba(255,255,255,.66);box-shadow:inset 0 1px 0 rgba(255,255,255,.78)}
.partner-rx-step{display:flex;align-items:center;gap:7px;color:#7c6e65;font-size:13px;font-weight:700;white-space:nowrap}
.partner-rx-step b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#f1e3c9;color:#7b4e18;font-size:11px;font-family:Arial,sans-serif}
.partner-rx-step.active{color:#5f1b19}.partner-rx-step.active b{background:#731f1c;color:#fff;box-shadow:0 4px 10px rgba(115,31,28,.20)}
.partner-rx-step-line{width:46px;height:1px;margin:0 12px;background:linear-gradient(90deg,#d7b872,#eadcc3)}
.partner-record-card{padding:0!important;overflow:hidden;border-color:#d8bea0;background:#f6ede0;box-shadow:0 18px 44px rgba(73,29,20,.12)}
.partner-clinical-paper{--record-wine:#681c19;--record-wine-deep:#43110f;--record-gold:#c29a50;--record-cream:#fffaf0;counter-reset:record-section;max-width:none!important;padding:25px 27px 30px!important;border:0!important;border-radius:0!important;background:radial-gradient(circle at 4% 4%,rgba(194,154,80,.06),transparent 18%),linear-gradient(180deg,#fffefb,#fffbf2)!important;box-shadow:inset 0 0 0 1px rgba(164,126,61,.24),inset 0 0 0 7px #fffdf8!important;font-family:"Microsoft YaHei","PingFang SC","Source Han Sans SC",sans-serif}
.partner-clinical-paper .rx-paper-header{position:relative;display:block;margin:-25px -27px 24px;padding:22px 28px;border:0;background:radial-gradient(circle at 85% 18%,rgba(230,193,119,.17),transparent 26%),linear-gradient(132deg,var(--record-wine-deep) 0%,var(--record-wine) 54%,#873029 100%);box-shadow:0 9px 24px rgba(83,21,18,.19);text-align:center}
.partner-clinical-paper .rx-paper-header:before{content:"";position:absolute;inset:auto 0 0;height:3px;background:linear-gradient(90deg,transparent 3%,#d8b36e 22%,#f0d99d 50%,#d8b36e 78%,transparent 97%)}
.partner-clinical-paper .a5-heading-copy{text-align:center}
.partner-clinical-paper .rx-paper-header h2{margin:0 0 7px;color:#fffdf6;font-family:inherit;font-size:29px;font-weight:800;letter-spacing:.3px;text-shadow:0 2px 5px rgba(0,0,0,.18)}
.partner-clinical-paper .rx-paper-header .sub{display:flex;align-items:center;justify-content:center;gap:9px;color:#ead09a;font-size:12px;font-weight:700;letter-spacing:2px}
.partner-clinical-paper .rx-paper-header .sub:before,.partner-clinical-paper .rx-paper-header .sub:after{content:"";width:32px;height:1px;background:rgba(233,204,147,.54)}
.partner-clinical-paper .a5-section{margin:18px 0;border-color:#e4d4bd;border-radius:13px;background:#fffefb;box-shadow:0 5px 16px rgba(82,43,26,.045)}
.partner-clinical-paper .a5-section{counter-increment:record-section}
.partner-clinical-paper .a5-section-title{position:relative;display:flex;align-items:center;min-height:46px;padding:10px 16px 10px 58px;border-bottom:1px solid #eadbc5;background:linear-gradient(90deg,#f3e3c9 0%,#fff8eb 52%,#fffdf8 100%);color:#59201c;font-family:"Microsoft YaHei","微软雅黑",sans-serif;font-size:17px;font-weight:800;letter-spacing:0}
.partner-clinical-paper .a5-section-title:before{content:counter(record-section,decimal-leading-zero);position:absolute;left:15px;top:50%;display:grid;place-items:center;width:30px;height:30px;border:1px solid #bd944b;border-radius:9px;background:linear-gradient(145deg,#7a2621,#5f1916);color:#f7e6bd;font:800 11px/1 Arial,sans-serif;letter-spacing:0;box-shadow:0 4px 9px rgba(103,29,25,.16);transform:translateY(-50%)}
.partner-clinical-paper .a5-section-title:after{content:"";position:absolute;right:16px;top:50%;width:54px;height:1px;background:linear-gradient(90deg,#d3b272,transparent)}
.partner-clinical-paper .a5-fields{background:#fffefa}
.partner-clinical-paper .a5-field{min-height:56px;padding:10px 13px;border-color:#eee2d2;background:rgba(255,254,250,.82)}
.partner-clinical-paper .a5-field label{position:relative;color:#503b32;font-size:13px;font-weight:900;letter-spacing:.2px}
.partner-clinical-paper .a5-field input,.partner-clinical-paper .a5-field select{height:35px;padding:6px 9px;border:1px solid #ded0bd;border-radius:7px;background:#fff;color:#382d27;font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:13px;transition:border-color .16s,box-shadow .16s}
.partner-clinical-paper .a5-field input[readonly]{background:#f6efe3;color:#765e50;font-weight:700}
.partner-clinical-paper .a5-field input:focus,.partner-clinical-paper .a5-field select:focus{border-color:#b68b43;box-shadow:0 0 0 3px rgba(181,139,66,.12)}
.partner-clinical-paper .a5-question-grid{background:#fffefb}
.partner-clinical-paper .a5-question{min-height:61px;padding:13px 15px;border-color:#eee2d2;grid-template-columns:72px 1fr}
.partner-clinical-paper .a5-question b{color:#5f241f;font-family:"Microsoft YaHei","微软雅黑","PingFang SC",sans-serif;font-size:14px;font-weight:900;letter-spacing:1px}
.partner-clinical-paper .a5-check{padding:4px 8px;border:1px solid #e6d8c4;border-radius:99px;background:#fffaf2;color:#68584e;font-size:12px;transition:.15s}
.partner-clinical-paper .a5-check:hover{border-color:#c9a564;background:#fff3dd;color:#64211d}
.partner-clinical-paper .a5-check:has(input:checked){border-color:#8e4138;background:#f7e9e5;color:#6d211d;font-weight:800}
.partner-clinical-paper .a5-check input{accent-color:#731f1c}
.partner-clinical-paper .a5-block{padding:15px 16px;border-color:#eee2d2}
.partner-clinical-paper .a5-block label{margin-bottom:9px;color:#5f241f;font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:13px;font-weight:900;letter-spacing:.5px}
.partner-clinical-paper .a5-textarea{padding:11px 12px;border:1px solid #ded0bd;border-radius:8px;background:linear-gradient(#fff,#fffdf9);color:#382d27;font-family:"Microsoft YaHei","PingFang SC",sans-serif;line-height:1.75;transition:border-color .16s,box-shadow .16s}
.partner-clinical-paper .a5-textarea::placeholder,.partner-clinical-paper input::placeholder{color:#aa9a8e;font-weight:400}
.partner-clinical-paper .a5-textarea.tall{background-color:#fffefb;background-image:repeating-linear-gradient(180deg,transparent 0,transparent 29px,rgba(202,181,146,.20) 30px);line-height:30px}
.partner-clinical-paper .a5-textarea:focus{border-color:#b68b43;box-shadow:0 0 0 3px rgba(181,139,66,.12)}
.partner-clinical-paper .a5-signature{padding:15px 16px;background:linear-gradient(90deg,#fffdf8,#faf3e7)}
.partner-clinical-paper .a5-date input{border-bottom-color:#a37d3c;color:#5c302b;font-weight:800}
.partner-upload-card{border-color:#dfceb1;background:linear-gradient(145deg,#fffefa,#fbf4e8);box-shadow:0 9px 24px rgba(83,37,24,.06)}
.partner-upload-card .card-title{color:#59201d;font-size:17px}
.partner-upload-card .form-label{color:#77675d;font-size:13px;line-height:1.7}
.partner-upload-card input[type="file"]{border-style:dashed;border-color:#cfaf76;background:#fffaf0;color:#685448}
.clinical-confirm-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 3px 10px;color:#59201d}
.clinical-confirm-heading b{font-size:17px}.clinical-confirm-heading span{color:#837168;font-size:12px}
.medical-ocr-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.medical-ocr-title-row .card-title{margin:0}.medical-ocr-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid #c7ddd6;border-radius:999px;background:#edf8f4;color:#176851;font-size:12px;font-weight:900;white-space:nowrap}
.medical-ocr-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px dashed #dfceb1}
.medical-ocr-actions .btn{min-height:40px;background:linear-gradient(135deg,#1b7159,#298a6d);border-color:#17644f;box-shadow:0 7px 16px rgba(31,116,89,.18)}
.medical-ocr-actions .btn.is-loading{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#176a54,#26876b);cursor:wait}
.medical-ocr-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.38);border-top-color:#fff;border-radius:50%;animation:medicalOcrSpin .85s linear infinite}
.medical-ocr-button-dots{display:inline-flex;align-items:flex-end;gap:3px;height:15px}.medical-ocr-button-dots i{width:3px;height:3px;border-radius:50%;background:#fff;animation:medicalOcrDot 1.35s ease-in-out infinite}.medical-ocr-button-dots i:nth-child(2){animation-delay:.18s}.medical-ocr-button-dots i:nth-child(3){animation-delay:.36s}
.medical-ocr-actions small{flex:1;min-width:220px;color:#826f63;line-height:1.65}
.medical-ocr-result{display:none;margin-top:14px;border:1px solid #c9ddd7;border-radius:13px;background:linear-gradient(145deg,#f8fffc,#f2faf7);overflow:hidden}
.medical-ocr-result.show{display:block}.medical-ocr-result.is-error{border-color:#e8b8b3;background:#fff7f6}
.medical-ocr-result.is-loading{position:relative;border-color:#b8d9cd;background:linear-gradient(135deg,#f7fffc,#eef9f5)}
.medical-ocr-result.is-loading:before{content:"";position:absolute;z-index:0;top:0;bottom:0;left:-32%;width:28%;background:linear-gradient(90deg,transparent,rgba(58,164,130,.13),rgba(255,255,255,.72),rgba(58,164,130,.13),transparent);transform:skewX(-18deg);animation:medicalOcrScan 2.4s ease-in-out infinite;pointer-events:none}
.medical-ocr-loading{position:relative;z-index:1;display:flex;align-items:center;gap:14px;min-height:74px}
.medical-ocr-loading-mark{position:relative;display:grid;place-items:center;width:42px;height:42px;flex:none;border:1px solid #add4c7;border-radius:50%;background:#fff;box-shadow:0 5px 14px rgba(31,116,89,.12)}
.medical-ocr-loading-mark:before{content:"";width:22px;height:22px;border:3px solid #d9eee7;border-top-color:#1f8165;border-right-color:#1f8165;border-radius:50%;animation:medicalOcrSpin 1.15s linear infinite}
.medical-ocr-loading-copy{display:flex;flex-direction:column;gap:5px}.medical-ocr-loading-copy b{color:#245d4d;font-size:14px}.medical-ocr-loading-copy span{color:#756b65;font-size:12px;line-height:1.6}
.medical-ocr-loading-dots{display:inline-flex!important;flex-direction:row!important;gap:4px!important;margin-left:3px;vertical-align:middle}.medical-ocr-loading-dots i{width:5px;height:5px;border-radius:50%;background:#2f9275;animation:medicalOcrDot 1.35s ease-in-out infinite}.medical-ocr-loading-dots i:nth-child(2){animation-delay:.18s}.medical-ocr-loading-dots i:nth-child(3){animation-delay:.36s}
@keyframes medicalOcrSpin{to{transform:rotate(360deg)}}
@keyframes medicalOcrScan{0%{left:-32%;opacity:0}18%{opacity:1}72%{opacity:1}100%{left:112%;opacity:0}}
@keyframes medicalOcrDot{0%,70%,100%{transform:translateY(0);opacity:.38}35%{transform:translateY(-4px);opacity:1}}
@keyframes medicalOcrDotSoft{0%,100%{opacity:.35}50%{opacity:1}}
@media(prefers-reduced-motion:reduce){.medical-ocr-spinner,.medical-ocr-loading-mark:before{animation:medicalOcrSpin 2s linear infinite}.medical-ocr-button-dots i,.medical-ocr-loading-dots i{animation-name:medicalOcrDotSoft;animation-duration:2s}.medical-ocr-result.is-loading:before{animation:none;display:none}}
.medical-ocr-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #d7e7e2;background:rgba(255,255,255,.65)}
.medical-ocr-result-head b{display:block;color:#235f4e;font-size:15px}.medical-ocr-result-head span{display:block;margin-top:4px;color:#7b716b;font-size:12px;line-height:1.6}
.medical-ocr-confidence{padding:5px 9px;border-radius:999px;background:#e4f4ee;color:#176851;font-size:12px;font-weight:900;white-space:nowrap}
.medical-ocr-result-body{padding:14px 16px}.medical-ocr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.medical-ocr-field{padding:9px 10px;border:1px solid #e1e9e5;border-radius:9px;background:#fff}.medical-ocr-field.wide{grid-column:span 3}
.medical-ocr-field b{display:block;margin-bottom:4px;color:#786860;font-size:11px}.medical-ocr-field span{display:block;color:#372e29;font-size:13px;line-height:1.65;white-space:pre-wrap;word-break:break-word}
.medical-ocr-warning{margin-top:11px;padding:10px 12px;border:1px solid #efd7a5;border-radius:9px;background:#fff9e9;color:#805d1f;font-size:12px;line-height:1.7}
.medical-ocr-raw{margin-top:10px;color:#665950;font-size:12px}.medical-ocr-raw summary{cursor:pointer;font-weight:800;color:#355e51}.medical-ocr-raw pre{max-height:220px;margin:8px 0 0;padding:10px;border:1px solid #dfebe6;border-radius:8px;background:#fff;overflow:auto;white-space:pre-wrap;word-break:break-word;font-family:inherit;line-height:1.65}
.medical-ocr-result-buttons{display:flex;justify-content:flex-end;gap:9px;margin-top:12px}.medical-ocr-result-buttons .btn-primary{background:#6f201d;border-color:#6f201d}
.clinical-ai-rx-tools{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:10px}.clinical-ai-rx-tools .btn{font-size:13px}.clinical-ai-rx-status{flex:1;min-width:220px;color:#79695e;font-size:13px;line-height:1.7}.clinical-ai-rx-status.is-busy{color:#176851}.clinical-ai-rx-status.is-busy .medical-ocr-spinner{width:13px;height:13px;margin-right:6px;vertical-align:middle;border-color:#c9e6dc;border-top-color:#176851}.clinical-ai-rx-status.is-warning{color:#916012}.clinical-ai-rx-status.is-error{color:#9a3028}
@media(max-width:760px){.medical-ocr-grid{grid-template-columns:1fr}.medical-ocr-field.wide{grid-column:span 1}.medical-ocr-title-row{align-items:flex-start;flex-direction:column}.clinical-confirm-heading{align-items:flex-start;flex-direction:column}}
.partner-submit-bar{position:sticky;z-index:5;bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:15px 17px;border:1px solid #d6bd8d;border-radius:14px;background:rgba(255,252,245,.94);box-shadow:0 13px 36px rgba(72,28,19,.16);backdrop-filter:blur(10px)}
.partner-submit-copy{display:flex;flex-direction:column;gap:3px}.partner-submit-copy b{color:#54201d;font-size:14px}.partner-submit-copy span{color:#89786d;font-size:12px}
.partner-submit-btn{min-width:174px;min-height:45px;border-color:#6b1c19;background:linear-gradient(135deg,#6b1c19,#8b3028);box-shadow:0 7px 16px rgba(115,31,28,.22);font-size:14px;letter-spacing:.5px}
.partner-submit-btn:hover{background:linear-gradient(135deg,#7d2520,#9b3a30);box-shadow:0 10px 20px rgba(115,31,28,.28)}

/* 所有录入内容统一为患者服务与回访系统的清晰字号 */
.form-input,.form-select,.form-textarea,
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),select,textarea{
  font-family:"Microsoft YaHei","微软雅黑","PingFang SC","Noto Sans CJK SC",Arial,sans-serif;
  font-size:16px;
  font-weight:400;
  line-height:1.5;
  color:#302821;
}
.form-input::placeholder,.form-textarea::placeholder,
input::placeholder,textarea::placeholder{font-size:16px;font-weight:400;color:#8b8179;opacity:1}
.a5-section-title,.partner-clinical-paper .a5-section-title{font-size:18px}
.a5-field label,.a5-question b,.a5-block label,
.partner-clinical-paper .a5-field label,
.partner-clinical-paper .a5-question b,
.partner-clinical-paper .a5-block label{font-size:15px}
.a5-field input,.a5-field select,.a5-textarea,
.a5-textarea.tall,.partner-clinical-paper .a5-field input,
.partner-clinical-paper .a5-field select,.partner-clinical-paper .a5-textarea{
  font-family:"Microsoft YaHei","微软雅黑","PingFang SC","Noto Sans CJK SC",Arial,sans-serif;
  font-size:17px;
  font-weight:400;
  color:#302821;
}
.a5-field input::placeholder,.a5-textarea::placeholder,
.partner-clinical-paper .a5-field input::placeholder,
.partner-clinical-paper .a5-textarea::placeholder{font-size:17px}
.partner-clinical-paper .a5-field{min-height:62px}
.partner-clinical-paper .a5-field input,.partner-clinical-paper .a5-field select{height:40px}
.a5-patient-info-section{position:relative;z-index:3;overflow:visible}
.a5-medication-combobox{position:relative;min-width:0;flex:1}
.a5-field .a5-medication-combobox input{width:100%;padding-right:38px;font-size:17px}
.a5-medication-toggle{position:absolute;top:50%;right:5px;display:grid;width:31px;height:31px;padding:0;place-items:center;border:0;background:transparent;color:#4d4039;cursor:pointer;transform:translateY(-50%)}
.a5-medication-toggle span{width:0;height:0;border-right:5px solid transparent;border-left:5px solid transparent;border-top:7px solid currentColor;transition:transform .18s ease}
.a5-medication-combobox.is-open .a5-medication-toggle span{transform:rotate(180deg)}
.a5-section.a5-dropdown-open{position:relative;z-index:50;overflow:visible}
.a5-medication-menu{position:absolute;z-index:1000;top:calc(100% + 4px);right:0;left:0;display:none;overflow:hidden;padding:5px;border:1px solid #d8c7ae;border-radius:8px;background:#fff;box-shadow:0 12px 26px rgba(72,43,28,.18)}
.a5-medication-combobox.is-open .a5-medication-menu{display:grid;animation:a5MedicationMenuIn .16s ease both}
.a5-medication-option{width:100%;min-height:40px;padding:8px 10px;border:0;border-radius:6px;background:#fff;color:#302821;font-family:"Microsoft YaHei","微软雅黑","PingFang SC",sans-serif;font-size:17px;font-weight:400;line-height:1.3;text-align:left;cursor:pointer}
.a5-medication-option:hover,.a5-medication-option:focus{outline:0;background:#f3ebe0;color:#6d1d1a}
@keyframes a5MedicationMenuIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.a5-source-controls{display:flex;min-width:0;flex:1;align-items:center;gap:8px}
.a5-source-controls>select,.a5-source-controls>.hc-select-wrap,.a5-online-source{min-width:0;flex:1 1 0}
.a5-online-source[hidden]{display:none!important}
.a5-online-source>.hc-select-wrap{width:100%}
.a5-source-field.has-online-source .a5-source-controls>.hc-select-wrap{width:auto;min-width:0;flex:0 1 40%}
.a5-source-field.has-online-source .a5-online-source{display:flex;min-width:0;flex:1 1 60%}
.a5-source-field.has-online-source .a5-online-source>.hc-select-wrap{width:100%;min-width:0;flex:1 1 100%}
.a5-source-field.has-online-source .hc-select-trigger{min-width:0;gap:6px;padding-right:9px;padding-left:9px}
.a5-check,.partner-clinical-paper .a5-check{font-size:15px;font-weight:400}
.a5-check input,.partner-clinical-paper .a5-check input{width:18px;height:18px}
.a5-unit{font-size:13px}
.a5-date{font-size:14px}

/* 品牌图片、图标与照片统一为患者服务系统的视觉语言 */
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.header-logo{display:block!important;object-fit:contain}
.brand:before{display:none!important;content:none}
.login-card .icon{color:var(--wine)}
.login-card .icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nav-icon{display:inline-flex;align-items:center;justify-content:center;height:23px;flex:0 0 23px}
.nav-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ui-icon{width:17px;height:17px;display:inline-block;vertical-align:-3px;margin-right:6px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ui-icon.sm{width:15px;height:15px;margin-right:4px;vertical-align:-2px}
.card-title .ui-icon{width:20px;height:20px;vertical-align:-4px;color:var(--wine)}
.empty-state{position:relative;min-height:142px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:linear-gradient(145deg,#fffdf9,#faf4e9);border:1px dashed #ddcfba;border-radius:12px}
.empty-state:before{content:"";display:block;width:54px;height:54px;border:0;border-radius:0;background-color:transparent;background-image:var(--home-logo-image,none);background-repeat:no-repeat;background-position:center;background-size:contain;opacity:.58;box-shadow:none;mix-blend-mode:multiply}
.photo-preview-wrap{gap:12px!important;margin-top:12px!important}
.photo-thumb{padding:5px;background:#fff;border:1px solid #dbc9aa;border-radius:12px;box-shadow:0 8px 18px rgba(80,35,24,.10);overflow:visible;transition:.18s}
.photo-thumb:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(80,35,24,.14)}
.photo-thumb img{display:block;width:96px!important;height:96px!important;border:0!important;border-radius:8px!important;object-fit:cover;background:#f4eddf}
.photo-thumb .photo-del{top:-8px!important;right:-8px!important;width:24px!important;height:24px!important;line-height:24px!important;background:var(--wine)!important;border:2px solid #fff!important;box-shadow:0 4px 10px rgba(72,21,18,.24)}
.photo-add{width:108px!important;height:108px!important;border:1.5px dashed #c9aa6c!important;border-radius:12px!important;background:#fff9ed;color:#805615!important;font-weight:800;line-height:1.6;transition:.18s}
.photo-add:hover{background:#fff3d8;border-color:var(--wine)!important;color:var(--wine)!important;transform:translateY(-2px)}
#logistics-map{background:radial-gradient(circle at 76% 18%,rgba(181,139,66,.13),transparent 24%),linear-gradient(155deg,#fffdf8,#f3eadc)!important;border:1px solid var(--border);border-radius:0 0 13px 13px}
#logistics-map svg{display:block}

/* 配送管理：物流地图与全系统物流明细 */
.logistics-overview-card{overflow:hidden;padding:0!important;border:1px solid #ddc9aa;background:#fffdf8;box-shadow:0 15px 38px rgba(69,34,24,.10)}
.logistics-overview-head{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:22px 24px 18px;background:radial-gradient(circle at 92% 0,rgba(181,139,66,.20),transparent 36%),linear-gradient(135deg,#fffdf9,#f8eddb)}
.logistics-overview-title{display:flex;align-items:center;gap:13px;min-width:0}.logistics-overview-icon{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:14px;background:linear-gradient(145deg,#6d1d1a,#91372e);color:#fff9ec;box-shadow:0 9px 20px rgba(112,30,27,.22)}.logistics-overview-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.9}.logistics-overview-copy b{display:block;color:#4b2823;font-size:19px;font-weight:900;letter-spacing:.3px}.logistics-overview-copy span{display:block;margin-top:4px;color:#857269;font-size:12px}
.logistics-kpi-row{display:grid;grid-template-columns:repeat(4,minmax(92px,1fr));gap:9px;min-width:min(520px,58%)}.logistics-kpi{position:relative;overflow:hidden;padding:11px 13px;border:1px solid rgba(var(--kpi-rgb),.22);border-radius:12px;background:rgba(255,255,255,.78);box-shadow:0 6px 16px rgba(63,36,25,.06)}.logistics-kpi:after{content:"";position:absolute;right:-13px;bottom:-18px;width:48px;height:48px;border-radius:50%;background:rgba(var(--kpi-rgb),.09)}.logistics-kpi strong{display:block;color:var(--kpi-color);font-size:21px;font-weight:900;line-height:1.1}.logistics-kpi span{display:block;margin-top:5px;color:#7a6a61;font-size:11px;font-weight:700}.logistics-kpi.tone-total{--kpi-color:#6d1d1a;--kpi-rgb:109,29,26}.logistics-kpi.tone-route{--kpi-color:#326b8d;--kpi-rgb:50,107,141}.logistics-kpi.tone-arrive{--kpi-color:#a96e19;--kpi-rgb:169,110,25}.logistics-kpi.tone-done{--kpi-color:#287056;--kpi-rgb:40,112,86}
.logistics-map-stage{position:relative;padding:0 18px 18px;background:linear-gradient(180deg,#f8eddb 0,#fffdf8 28px)}.logistics-map-stage #logistics-map{height:470px;border:1px solid #d8c4a2!important;border-radius:16px!important;background:linear-gradient(145deg,#f9f1e4,#fffdf9)!important;box-shadow:inset 0 0 0 5px rgba(255,255,255,.56),0 10px 24px rgba(75,40,25,.08)}
.logistics-detail-card{padding:0!important;overflow:hidden;border:1px solid #e0d2be;background:#fffdf9;box-shadow:0 12px 32px rgba(69,34,24,.08)}.logistics-detail-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:21px 23px;border-bottom:1px solid #eadfce;background:linear-gradient(135deg,#fffdf9,#faf3e8)}.logistics-detail-title{display:flex;align-items:center;gap:11px}.logistics-detail-title .title-icon{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:#f1e2cc;color:var(--wine)}.logistics-detail-title .title-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9}.logistics-detail-title b{display:block;color:#402923;font-size:18px}.logistics-detail-title span{display:block;margin-top:3px;color:#8a786e;font-size:12px}.logistics-detail-count{padding:7px 12px;border:1px solid #d9c49b;border-radius:999px;background:#fff9ec;color:#70441d;font-size:12px;font-weight:900}
.logistics-order-list{display:grid;gap:16px;padding:20px}.logistics-order-card{--order-color:#326b8d;--order-soft:#eaf2f7;--order-rgb:50,107,141;position:relative;overflow:hidden;border:1px solid rgba(var(--order-rgb),.24);border-radius:16px;background:linear-gradient(145deg,#fff,#fffaf3);box-shadow:0 9px 24px rgba(62,35,24,.08);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.logistics-order-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,var(--order-color),rgba(var(--order-rgb),.38))}.logistics-order-card:hover{transform:translateY(-3px);border-color:rgba(var(--order-rgb),.45);box-shadow:0 16px 36px rgba(62,35,24,.13)}.logistics-order-card.tone-collected{--order-color:#4e789f;--order-soft:#e9f1f7;--order-rgb:78,120,159}.logistics-order-card.tone-transit{--order-color:#a96e19;--order-soft:#fff1d6;--order-rgb:169,110,25}.logistics-order-card.tone-delivered{--order-color:#a34f32;--order-soft:#fbe9df;--order-rgb:163,79,50}.logistics-order-card.tone-signed{--order-color:#175f45;--order-soft:#c4e4d3;--order-rgb:23,95,69;border:1.5px solid rgba(23,95,69,.76);background:linear-gradient(135deg,#e2f3e9 0%,#c8e5d6 56%,#deefe7 100%);box-shadow:0 11px 30px rgba(23,95,69,.22)}.logistics-order-card.tone-signed:before{width:7px;background:linear-gradient(180deg,#277b5c,#104a35)}.logistics-order-card.tone-signed:hover{border-color:#176247;box-shadow:0 17px 38px rgba(23,95,69,.29)}
.logistics-order-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 19px 15px 22px;border-bottom:1px solid #eee4d7;background:radial-gradient(circle at 92% 10%,rgba(var(--order-rgb),.10),transparent 31%);cursor:pointer;user-select:none}.logistics-order-head:focus-visible{outline:3px solid rgba(var(--order-rgb),.24);outline-offset:-3px}.logistics-order-identity{display:flex;align-items:center;gap:12px;min-width:0}.logistics-order-number{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border:1px solid rgba(var(--order-rgb),.28);border-radius:11px;background:var(--order-soft);color:var(--order-color);font-size:13px;font-weight:900}.logistics-order-name{min-width:0}.logistics-order-name b{display:block;color:#432c26;font-size:16px;font-weight:900}.logistics-order-name span{display:block;margin-top:3px;color:#827168;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logistics-order-head-actions{display:flex;align-items:center;gap:12px;flex:0 0 auto}.logistics-order-state{flex:0 0 auto}.logistics-expand-hint{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border:1px solid rgba(var(--order-rgb),.24);border-radius:999px;background:#fff;color:var(--order-color);font-size:11px;font-weight:900}.logistics-expand-text:before{content:"点击收起"}.logistics-expand-chevron{width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(225deg);transition:transform .2s ease}.logistics-order-card.is-collapsed .logistics-expand-text:before{content:"点击展开"}.logistics-order-card.is-collapsed .logistics-expand-chevron{transform:rotate(45deg) translate(-1px,-1px)}.logistics-order-card.is-collapsed .logistics-order-head{border-bottom:0}.logistics-order-card.is-collapsed .logistics-order-body,.logistics-order-card.is-collapsed .logistics-alert,.logistics-order-card.is-collapsed .logistics-progress-wrap,.logistics-order-card.is-collapsed .logistics-order-foot{display:none}.logistics-order-card.is-collapsed:hover{transform:translateY(-2px)}
.logistics-order-card.tone-signed .logistics-order-head{background:radial-gradient(circle at 90% 0,rgba(23,95,69,.27),transparent 35%),linear-gradient(110deg,rgba(229,244,236,.99),rgba(190,222,205,.98))}.logistics-order-card.tone-signed .logistics-order-number{border-color:rgba(23,95,69,.58);background:#b8dcc9;color:#104e38;box-shadow:0 4px 13px rgba(23,95,69,.18)}.logistics-order-card.tone-signed .logistics-order-name b{color:#123f30}.logistics-order-card.tone-signed .logistics-order-name span{color:#496b5d}.logistics-order-card.tone-signed .logistics-order-state .st-received{border:1px solid rgba(23,95,69,.58);background:#b8ddc9;color:#104d37;box-shadow:0 3px 10px rgba(23,95,69,.15)}.logistics-order-card.tone-signed .logistics-order-state .st-received .status-dot{background:#175f45;box-shadow:0 0 0 3px rgba(23,95,69,.15)}.logistics-order-card.tone-signed .logistics-expand-hint{border-color:rgba(23,95,69,.46);background:#edf8f2;color:#114f39;box-shadow:0 3px 10px rgba(23,95,69,.12)}
.logistics-order-body{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(360px,1.3fr);gap:15px;padding:16px 19px 8px 22px}.logistics-route-box{display:flex;align-items:center;gap:9px;padding:14px 15px;border:1px solid #eadfce;border-radius:13px;background:#fffaf2}.logistics-route-point{min-width:0;flex:0 1 auto}.logistics-route-point b{display:block;color:#4c342d;font-size:13px}.logistics-route-point span{display:block;margin-top:3px;color:#917f75;font-size:10px}.logistics-route-line{position:relative;flex:1;min-width:58px;height:2px;background:linear-gradient(90deg,#d0aa61,var(--order-color))}.logistics-route-line:before,.logistics-route-line:after{content:"";position:absolute;top:50%;width:7px;height:7px;border-radius:50%;transform:translateY(-50%)}.logistics-route-line:before{left:-1px;background:#d0aa61}.logistics-route-line:after{right:-1px;background:var(--order-color);box-shadow:0 0 0 4px rgba(var(--order-rgb),.12)}.logistics-route-truck{position:absolute;left:52%;top:50%;display:grid;place-items:center;width:28px;height:28px;border:1px solid rgba(var(--order-rgb),.30);border-radius:50%;background:#fff;color:var(--order-color);transform:translate(-50%,-50%);box-shadow:0 3px 9px rgba(var(--order-rgb),.16)}.logistics-route-truck svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2}
.logistics-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.logistics-info-item{min-width:0;padding:10px 12px;border:1px solid #eee3d4;border-radius:11px;background:#fffdf9}.logistics-info-item span{display:block;color:#9a877b;font-size:10px;font-weight:700}.logistics-info-item b{display:block;margin-top:4px;color:#504038;font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logistics-info-item .tracking-number{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.5px;color:var(--order-color)}
.logistics-progress-wrap{margin:6px 19px 0 22px;padding:8px 12px 11px;border-radius:13px;background:linear-gradient(180deg,#fffdf9,#fbf5eb)}.logistics-timeline{display:grid;grid-template-columns:repeat(5,minmax(76px,1fr));gap:0;padding:10px 0 2px;overflow:visible}.logistics-node{position:relative;z-index:1;min-width:0;padding:0 5px;text-align:center}.logistics-node:not(:last-child):after{content:"";position:absolute;z-index:-1;left:calc(50% + 18px);top:17px;width:calc(100% - 36px);height:3px;border-radius:99px;background:#e1d7c8}.logistics-node.active:not(:last-child):after{background:linear-gradient(90deg,#287056,var(--order-color,#287056))}.logistics-node .ln-dot{display:grid;width:34px;height:34px;margin:0 auto 7px;place-items:center;border:2px solid #ded3c3;border-radius:50%;background:#fff;color:#aa9c91;box-shadow:0 3px 8px rgba(57,36,25,.06)}.logistics-node .ln-dot svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2}.logistics-node .ln-label{color:#9b8b80;font-size:11px;font-weight:700}.logistics-node .ln-note{display:block;min-height:14px;margin-top:2px;color:#b1a59d;font-size:9px}.logistics-node.active .ln-dot{border-color:#287056;background:#287056;color:#fff}.logistics-node.active .ln-label{color:#287056;font-weight:900}.logistics-node.current .ln-dot{border-color:var(--order-color,#731f1c);background:var(--order-soft,#f7e8e5);color:var(--order-color,#731f1c);box-shadow:0 0 0 5px rgba(var(--order-rgb,115,31,28),.10),0 6px 13px rgba(var(--order-rgb,115,31,28),.20);animation:logisticsNodeBreathe 2.3s ease-in-out infinite}.logistics-node.current .ln-label,.logistics-node.current .ln-note{color:var(--order-color,#731f1c);font-weight:900}.logistics-timeline.is-signed{--order-color:#287056;--order-soft:#e2f2e9;--order-rgb:40,112,86}.logistics-timeline.is-signed .logistics-node.current .ln-dot{border-color:#287056;background:linear-gradient(145deg,#33836a,#205d47);color:#fff;box-shadow:0 0 0 5px rgba(40,112,86,.12),0 6px 15px rgba(40,112,86,.28),inset 0 0 0 3px rgba(255,255,255,.12)}.logistics-timeline.is-signed .logistics-node.current .ln-label,.logistics-timeline.is-signed .logistics-node.current .ln-note{color:#287056}.shipment-modal .st-received{border:1px solid rgba(40,112,86,.24);background:#e2f2e9;color:#216d52}.shipment-modal .st-received .status-dot{background:#287056}@keyframes logisticsNodeBreathe{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
.logistics-order-foot{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 19px 17px 22px}.logistics-status-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.logistics-action-label{margin-right:2px;color:#89786e;font-size:11px;font-weight:800}.logistics-status-btn{min-height:32px!important;padding:6px 10px!important;border-color:#ddcfbd!important;background:#fff!important;color:#6f625a!important;font-size:12px!important}.logistics-status-btn.current{border-color:rgba(var(--btn-rgb),.42)!important;background:var(--btn-soft)!important;color:var(--btn-color)!important;box-shadow:0 0 0 3px rgba(var(--btn-rgb),.09)!important}.logistics-status-btn.collected{--btn-color:#4e789f;--btn-rgb:78,120,159;--btn-soft:#e9f1f7}.logistics-status-btn.transit{--btn-color:#a96e19;--btn-rgb:169,110,25;--btn-soft:#fff1d6}.logistics-status-btn.delivered{--btn-color:#a34f32;--btn-rgb:163,79,50;--btn-soft:#fbe9df}.logistics-status-btn.signed{--btn-color:#287056;--btn-rgb:40,112,86;--btn-soft:#e2f2e9}.logistics-detail-btn{flex:0 0 auto;min-height:34px!important;padding:7px 12px!important;border-color:#d5ba83!important;background:#fff9ed!important;color:var(--wine)!important}
@media(prefers-reduced-motion:reduce){.logistics-node.current .ln-dot{animation:none}}
@media(max-width:1000px){.logistics-overview-head{align-items:flex-start;flex-direction:column}.logistics-kpi-row{width:100%;min-width:0}.logistics-order-body{grid-template-columns:1fr}.logistics-map-stage #logistics-map{height:430px}}
@media(max-width:680px){.logistics-overview-head{padding:18px}.logistics-kpi-row{grid-template-columns:repeat(2,1fr)}.logistics-map-stage{padding:0 10px 10px}.logistics-map-stage #logistics-map{height:390px}.logistics-detail-head{align-items:flex-start;padding:17px;flex-direction:column}.logistics-order-list{padding:12px}.logistics-order-head{align-items:flex-start;padding:15px 14px 13px 18px}.logistics-order-body{padding:13px 14px 6px 18px}.logistics-info-grid{grid-template-columns:1fr}.logistics-progress-wrap{margin-left:18px;margin-right:14px;overflow-x:auto}.logistics-timeline{min-width:480px}.logistics-order-foot{align-items:flex-start;padding:12px 14px 15px 18px;flex-direction:column}.logistics-detail-btn{width:100%}}

/* 真实物流态势地图：仅使用物流轨迹中能够确认的城市节点，不模拟快递员GPS */
.logistics-overview-head{align-items:flex-start}.logistics-kpi-row{grid-template-columns:repeat(5,minmax(82px,1fr));min-width:min(650px,68%)}
.logistics-kpi.tone-wait{--kpi-color:#776d65;--kpi-rgb:119,109,101}.logistics-kpi.tone-receipt{--kpi-color:#9a651a;--kpi-rgb:154,101,26}
.logistics-overview-copy .logistics-data-line{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:6px}.logistics-data-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border:1px solid #d9c59f;border-radius:999px;background:#fffaf0;color:#73552a;font-size:10px;font-weight:900}.logistics-data-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:#287056;box-shadow:0 0 0 3px rgba(40,112,86,.10)}
.logistics-map-stage #logistics-map{height:540px;overflow:hidden}.logistics-live-map{display:grid;grid-template-columns:minmax(0,1fr) 294px;width:100%;height:100%;background:#f7eddf}.logistics-live-canvas{position:relative;min-width:0;overflow:hidden;background:radial-gradient(circle at 18% 15%,rgba(255,255,255,.94),transparent 30%),linear-gradient(150deg,#fffdf8,#f3e4cf)}.logistics-live-canvas svg{display:block;width:100%;height:100%}.logistics-live-mapbar{position:absolute;z-index:3;top:15px;left:17px;right:17px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;pointer-events:none}.logistics-live-mapbrand,.logistics-live-sync{padding:9px 11px;border:1px solid rgba(205,181,139,.70);border-radius:11px;background:rgba(255,253,248,.92);box-shadow:0 7px 18px rgba(70,36,24,.08);backdrop-filter:blur(8px)}.logistics-live-mapbrand b{display:block;color:#4a2c25;font-size:12px}.logistics-live-mapbrand span,.logistics-live-sync span{display:block;margin-top:3px;color:#8d7b70;font-size:9px}.logistics-live-sync{text-align:right}.logistics-live-sync b{display:block;color:#287056;font-size:11px}.logistics-map-truth-note{position:absolute;z-index:3;left:17px;bottom:14px;display:flex;align-items:center;gap:7px;max-width:calc(100% - 34px);padding:7px 10px;border:1px solid rgba(205,181,139,.65);border-radius:9px;background:rgba(255,253,248,.91);color:#806f65;font-size:9px;line-height:1.45;box-shadow:0 5px 14px rgba(70,36,24,.07)}.logistics-map-truth-note svg{width:14px;height:14px;flex:0 0 auto;fill:none;stroke:#287056;stroke-width:2}
.logistics-map-side{display:flex;min-width:0;padding:16px 14px 14px;border-left:1px solid #dfceb2;background:linear-gradient(180deg,#fffdf9,#f8efe2);flex-direction:column}.logistics-map-side-head{padding:2px 3px 11px;border-bottom:1px solid #eadfce}.logistics-map-side-head b{display:block;color:#462b25;font-size:14px}.logistics-map-side-head span{display:block;margin-top:4px;color:#8d7b70;font-size:10px;line-height:1.5}.logistics-map-order-list{display:grid;gap:8px;margin-top:11px;overflow:auto;padding-right:2px}.logistics-map-order{--map-status-color:#7c756d;position:relative;padding:10px 11px 10px 14px;border:1px solid #e6d9c6;border-radius:11px;background:#fff;box-shadow:0 5px 13px rgba(62,35,24,.055);cursor:pointer;transition:.18s}.logistics-map-order:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:4px;border-radius:0 4px 4px 0;background:var(--map-status-color)}.logistics-map-order:hover{transform:translateY(-1px);border-color:#d1b77f;box-shadow:0 8px 18px rgba(62,35,24,.10)}.logistics-map-order.is-attention{border-color:#e3ada7;background:#fff8f6}.logistics-map-order-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.logistics-map-order-head b{color:#4d342d;font-size:11px}.logistics-map-order-state{padding:3px 6px;border-radius:999px;background:color-mix(in srgb,var(--map-status-color) 12%,#fff);color:var(--map-status-color);font-size:8px;font-weight:900;white-space:nowrap}.logistics-map-order-place{display:flex;align-items:center;gap:5px;margin-top:7px;color:#59443c;font-size:11px;font-weight:900}.logistics-map-order-place svg{width:13px;height:13px;fill:none;stroke:var(--map-status-color);stroke-width:2}.logistics-map-order-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:5px;color:#9a8980;font-size:8.5px}.logistics-map-more{padding:8px;text-align:center;color:#866e5f;font-size:10px;font-weight:800}.logistics-map-side-empty{display:grid;min-height:220px;place-items:center;text-align:center;color:#9a887d;font-size:11px;line-height:1.65}.logistics-map-side-foot{margin-top:auto;padding:10px 3px 0;color:#948278;font-size:9px;line-height:1.55}.logistics-map-side-foot b{color:#6d4c38}
.logistics-map-order-state{border:1px solid var(--map-status-color);background:#fffaf3}
.logistics-map-node-pulse{transform-box:fill-box;transform-origin:center;animation:logisticsMapPulse 2.2s ease-out infinite}.logistics-map-route{stroke-dasharray:7 7;animation:logisticsRouteFlow 12s linear infinite}@keyframes logisticsMapPulse{0%{opacity:.55;transform:scale(.72)}70%,100%{opacity:0;transform:scale(1.65)}}@keyframes logisticsRouteFlow{to{stroke-dashoffset:-140}}
.logistics-summary-strip{padding:16px 18px!important;border:1px solid #ddc9aa;background:linear-gradient(135deg,#fffdf9,#f9f0e3);box-shadow:0 10px 26px rgba(69,34,24,.08)}.logistics-summary-strip .logistics-kpi-row{width:100%;min-width:0;grid-template-columns:repeat(5,minmax(82px,1fr))}
@media(prefers-reduced-motion:reduce){.logistics-map-node-pulse,.logistics-map-route{animation:none}}
@media(max-width:1250px){.logistics-overview-head{flex-direction:column}.logistics-kpi-row{width:100%;min-width:0}.logistics-live-map{grid-template-columns:minmax(0,1fr) 270px}}
@media(max-width:900px){.logistics-kpi-row,.logistics-summary-strip .logistics-kpi-row{grid-template-columns:repeat(3,minmax(82px,1fr))}.logistics-map-stage #logistics-map{height:720px}.logistics-live-map{grid-template-columns:1fr;grid-template-rows:420px 300px}.logistics-map-side{border-top:1px solid #dfceb2;border-left:0}.logistics-map-order-list{grid-template-columns:repeat(2,minmax(0,1fr))}.logistics-map-side-foot{display:none}}
@media(max-width:620px){.logistics-kpi-row,.logistics-summary-strip .logistics-kpi-row{grid-template-columns:repeat(2,minmax(80px,1fr))}.logistics-summary-strip{padding:12px!important}.logistics-map-stage #logistics-map{height:790px}.logistics-live-map{grid-template-rows:390px 400px}.logistics-live-mapbar{top:10px;left:10px;right:10px}.logistics-live-sync{display:none}.logistics-map-truth-note{left:10px;bottom:10px;max-width:calc(100% - 20px)}.logistics-map-order-list{grid-template-columns:1fr}}

/* ===== 物流接口本地测试版：按正式上线结构预留 ===== */
.logistics-mode-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding:15px 17px;border:1px solid #dfceb2;border-radius:13px;background:radial-gradient(circle at 96% 0,rgba(181,139,66,.14),transparent 36%),linear-gradient(145deg,#fffdf8,#f9f0e2)}
.logistics-mode-copy{min-width:0}.logistics-mode-copy b{display:block;color:#4a2d27;font-size:15px}.logistics-mode-copy span{display:block;margin-top:4px;color:#857269;font-size:12px;line-height:1.55}.logistics-mode-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.logistics-mode-pill,.logistics-source-pill,.sync-state-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:900;white-space:nowrap}.logistics-mode-pill:before,.sync-state-pill:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.logistics-mode-pill.mock{background:#fff0d8;color:#9a651a}.logistics-mode-pill.test{background:#e4eff8;color:#2e668d}.logistics-mode-pill.formal{background:#e2f2e9;color:#277056}.logistics-source-pill{background:#f1ece5;color:#73655b}.sync-state-pill.ok{background:#e2f2e9;color:#277056}.sync-state-pill.waiting{background:#fff1da;color:#9a651a}.sync-state-pill.failed{background:#fde5e1;color:#a33d35}.sync-state-pill.offline{background:#eeeae5;color:#756b63}
.logistics-alert{margin:0 19px 8px 22px;padding:10px 12px;border:1px solid #e0a8a2;border-radius:10px;background:#fff0ee;color:#9d3932;font-size:12px;font-weight:800;line-height:1.55}.logistics-alert.warning{border-color:#e4c17d;background:#fff8e7;color:#85601f}.logistics-alert.success{border-color:#abd4c4;background:#edf8f3;color:#28664f}
.shipment-modal .shipment-form-grid,.logistics-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.shipment-modal .full,.logistics-settings-grid .full{grid-column:1/-1}.shipment-hint{padding:11px 13px;border-left:4px solid var(--gold);border-radius:9px;background:#fff8e7;color:#76551d;font-size:12px;line-height:1.65}.shipment-mode-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #e2d4bf;border-radius:11px;background:#fffdf9}.shipment-mode-card span{color:#88766c;font-size:12px}
.shipment-summary{display:flex;gap:6px;padding:12px 14px;border:1px solid #e3d5c2;border-radius:11px;background:#fffaf2;flex-direction:column;grid-column:1/-1}.shipment-summary b{color:#4c332c;font-size:13px}.shipment-summary span{color:#85746a;font-size:12px}
.shipment-test-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 13px;border:1px dashed #c9a15f;border-radius:10px;background:linear-gradient(90deg,#fff6e5,#fffdf8)}.shipment-test-toolbar-copy{display:flex;align-items:center;gap:9px;min-width:0}.shipment-test-toolbar-copy b{flex:0 0 auto;padding:3px 8px;border-radius:99px;background:#7a2520;color:#fff9e9;font-size:11px;letter-spacing:.5px}.shipment-test-toolbar-copy span{color:#806c5d;font-size:12px}
.logistics-event-list{display:grid;gap:10px}.logistics-event{position:relative;padding:11px 12px 11px 35px;border:1px solid #eadfce;border-radius:11px;background:#fffdf9}.logistics-event:before{content:"";position:absolute;left:15px;top:16px;width:9px;height:9px;border-radius:50%;background:#b58b42;box-shadow:0 0 0 4px rgba(181,139,66,.12)}.logistics-event.exception:before{background:#b43d34;box-shadow:0 0 0 4px rgba(180,61,52,.11)}.logistics-event b{display:block;color:#4c332c;font-size:13px}.logistics-event span{display:block;margin-top:3px;color:#85746a;font-size:11px;line-height:1.5}.logistics-event small{display:block;margin-top:5px;color:#aa9a90;font-size:10px}.logistics-event-empty{padding:24px;text-align:center;color:#94847a;border:1px dashed #deceb7;border-radius:11px;background:#fffaf2}
.logistics-order-card.tone-pending{--order-color:#7c756d;--order-soft:#f0ede9;--order-rgb:124,117,109}.logistics-order-card.tone-dispatch{--order-color:#a34f32;--order-soft:#fbe9df;--order-rgb:163,79,50}.logistics-order-card.tone-exception{--order-color:#b43d34;--order-soft:#fde5e1;--order-rgb:180,61,52}.logistics-kpi.tone-alert{--kpi-color:#a83c34;--kpi-rgb:168,60,52}
.logistics-card-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:7px}.logistics-card-tools{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.logistics-card-tools .btn{white-space:nowrap}.logistics-settings-note{margin-top:12px;padding:11px 13px;border:1px dashed #d9c59f;border-radius:10px;background:#fffaf0;color:#796044;font-size:12px;line-height:1.65}.logistics-readonly-secret{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #c8dccf;border-radius:9px;background:#f0f8f4;color:#306650;font-size:12px;font-weight:800}
.local-test-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.local-test-step{padding:12px;border:1px solid #e5d8c5;border-radius:11px;background:#fffaf2;color:#78665c;font-size:11px;line-height:1.55}.local-test-step b{display:block;margin-bottom:5px;color:#5a332b;font-size:13px}.local-test-step i{display:grid;width:24px;height:24px;margin-bottom:8px;place-items:center;border-radius:50%;background:#731f1c;color:#fff9ed;font-style:normal;font-weight:900}
@media(max-width:760px){.logistics-mode-panel{align-items:flex-start;flex-direction:column}.logistics-mode-actions{justify-content:flex-start}.shipment-modal .shipment-form-grid,.logistics-settings-grid{grid-template-columns:1fr}.shipment-modal .full,.logistics-settings-grid .full{grid-column:auto}}
@media(max-width:520px){.shipment-test-toolbar{align-items:stretch;flex-direction:column}.shipment-test-toolbar-copy{align-items:flex-start;flex-direction:column;gap:5px}.shipment-test-toolbar .a5-test-fill-btn{width:100%}}
@media(max-width:900px){.local-test-steps{grid-template-columns:1fr}}

/* ===== 患者档案与售后回访：本地整合第一版 ===== */
.patient-link-panel{margin:0 0 14px;padding:13px 15px;border:1px dashed #d9c39a;border-radius:12px;background:linear-gradient(145deg,#fffdf8,#fbf4e8);color:#6f5f55;font-size:13px;line-height:1.65}
.patient-link-panel b{color:#4b2c27}.patient-link-panel.linked{border-style:solid;border-color:#acd4c4;background:#edf8f3;color:#28634f}.patient-link-panel.new{border-color:#e3bd78;background:#fff8e8;color:#805c20}.patient-link-panel.warning{border-color:#e1a59f;background:#fff1ef;color:#963d35}
.patient-link-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.patient-link-copy{min-width:0}.patient-link-copy span{display:block;margin-top:3px;font-size:12px;opacity:.9}.patient-candidates{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.patient-candidate{border:1px solid #d9c49a;border-radius:999px;background:#fff;padding:6px 10px;color:var(--wine);font-size:12px;font-weight:800}
.revisit-search-box{margin:0 22px 14px;padding:16px;border:1px solid #e4d5bd;border-radius:14px;background:linear-gradient(145deg,#fffdf9,#fbf3e6)}
.revisit-search-row{display:flex;gap:10px;align-items:center}.revisit-search-row input{flex:1;height:44px;border:1px solid #d7c5aa;border-radius:10px;padding:0 13px;background:#fff;font:inherit;color:var(--ink);outline:none}.revisit-search-row input:focus{border-color:var(--ochre);box-shadow:0 0 0 3px rgba(182,128,45,.10)}
.revisit-result-list{display:grid;gap:10px;margin:0}.revisit-result-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 15px;border:1px solid #e1d4c1;border-radius:12px;background:#fff;transition:.2s}.revisit-result-card:hover{border-color:#c99f59;box-shadow:0 7px 20px rgba(91,48,35,.08)}.revisit-result-copy{min-width:0}.revisit-result-copy b{display:block;color:#4b2c27;font-size:15px}.revisit-result-copy span{display:block;margin-top:4px;color:#7b6a5e;font-size:12px;line-height:1.55}.revisit-empty{margin:0;padding:28px 16px;text-align:center;border:1px dashed #ddcbb0;border-radius:12px;background:#fffaf1;color:#78685c;line-height:1.7}
.revisit-history-panel{position:relative;margin:18px 0;border:1px solid #d9c39a;border-radius:14px;background:linear-gradient(145deg,#fffdf8 0%,#fbf2e3 100%);box-shadow:0 8px 24px rgba(82,43,26,.07);overflow:hidden}
.revisit-history-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid #e6d5b9;background:linear-gradient(90deg,#f5e7cf,#fff9ed 58%,#fffdf8)}
.revisit-history-heading{display:flex;flex:1;align-items:center;align-self:stretch;gap:11px;min-width:0;cursor:pointer;border-radius:10px;transition:background .18s ease}.revisit-history-heading:hover{background:rgba(122,38,33,.045)}.revisit-history-heading:focus-visible{outline:2px solid rgba(189,148,75,.62);outline-offset:2px}.revisit-history-icon{display:grid;flex:0 0 30px;width:30px;height:30px;place-items:center;border:1px solid #bd944b;border-radius:9px;background:linear-gradient(145deg,#7a2621,#5f1916);color:#f7e6bd;line-height:0;box-shadow:0 4px 9px rgba(103,29,25,.16)}.revisit-history-icon .ui-icon{display:block;width:15px;height:15px;color:#f7e6bd}.revisit-history-heading b{display:block;color:#54241f;font-size:16px;font-weight:900}.revisit-history-heading>div>span{display:block;margin-top:2px;color:#89766a;font-size:11px}
.revisit-history-controls{display:flex;align-items:center;gap:7px;flex:0 0 auto}.revisit-history-arrow,.revisit-history-toggle{display:inline-flex;height:34px;align-items:center;justify-content:center;border:1px solid #dac5a5;border-radius:9px;background:rgba(255,255,255,.82);color:#6b3a2e;font-family:inherit;font-weight:900;cursor:pointer;transition:.18s}.revisit-history-arrow{width:34px;padding:0;font-size:19px}.revisit-history-toggle{gap:6px;padding:0 11px;font-size:12px}.revisit-history-arrow:hover,.revisit-history-toggle:hover{transform:translateY(-1px);border-color:#bd9250;background:#fff;box-shadow:0 5px 12px rgba(86,45,28,.09)}.revisit-history-arrow:disabled{cursor:default;opacity:.38;transform:none;box-shadow:none}.revisit-history-toggle i{width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(225deg) translate(-1px,-1px);transition:transform .2s ease}
.revisit-history-track-wrap{padding:14px 15px 16px}.revisit-history-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(430px,84%);gap:14px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-padding-inline:1px;padding:1px 1px 10px;scrollbar-width:thin;scrollbar-color:#c6a56b #f3e9d9}.revisit-history-track::-webkit-scrollbar{height:7px}.revisit-history-track::-webkit-scrollbar-track{border-radius:10px;background:#f3e9d9}.revisit-history-track::-webkit-scrollbar-thumb{border-radius:10px;background:linear-gradient(90deg,#b98e49,#d0af72)}
.revisit-history-card{position:relative;scroll-snap-align:start;overflow:hidden;border:1px solid #e2d3bd;border-radius:13px;background:#fff;box-shadow:0 6px 17px rgba(81,42,28,.06)}.revisit-history-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#7a2621}.revisit-history-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:13px 14px 11px 17px;border-bottom:1px dashed #e4d8c7;background:linear-gradient(135deg,#fffdf9,#fbf6ed)}.revisit-history-card-title b{display:block;color:#4b2923;font-size:14px;font-weight:900}.revisit-history-card-title span{display:block;margin-top:3px;color:#958278;font-size:10px}.revisit-history-card-number{display:inline-flex;align-items:center;padding:3px 8px;border-radius:99px;background:#f3e5d6;color:#7a2621;font-size:10px;font-weight:900;white-space:nowrap}
.revisit-history-card-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:13px 14px 14px 17px;max-height:390px;overflow-y:auto}.revisit-history-field{min-width:0;padding:9px 10px;border:1px solid #eee4d6;border-radius:9px;background:#fffcf7}.revisit-history-field.full{grid-column:1/-1}.revisit-history-field b{display:block;margin-bottom:4px;color:#8b7467;font-size:10px;font-weight:800}.revisit-history-field span{display:block;color:#4e3d35;font-size:12px;line-height:1.65;white-space:pre-wrap;word-break:break-word}.revisit-history-prescription{border-color:#dfc9aa;background:#fff9ee}.revisit-history-prescription span{color:#5d352b;font-weight:600}.revisit-history-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px 12px 17px;border-top:1px solid #eee4d8;background:#fffdf9}.revisit-history-meta{display:flex;gap:6px;flex-wrap:wrap;color:#8e7d72;font-size:10px}.revisit-history-card-actions .btn{min-height:31px;padding:5px 9px;font-size:11px}
.revisit-history-empty{padding:26px 16px;text-align:center;border:1px dashed #dcc7a6;border-radius:11px;background:#fffaf1;color:#806e62;font-size:13px}.revisit-history-panel.is-collapsed .revisit-history-track-wrap{display:none}.revisit-history-panel.is-collapsed .revisit-history-head{border-bottom:0}.revisit-history-panel.is-collapsed .revisit-history-toggle i{transform:rotate(45deg) translate(-1px,-1px)}
.care-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:15px}.care-searches{display:flex;align-items:center;gap:9px;flex:1;flex-wrap:wrap}.care-searches .form-input,.care-searches .form-select{width:auto;min-width:190px;max-width:300px;background:#fff}.care-toolbar-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.care-toolbar-actions .btn{white-space:nowrap}
.care-table-wrap{overflow-x:auto;border:1px solid #eee3d3;border-radius:12px;background:#fff}.care-table-wrap .data-table{min-width:940px}.care-table-wrap .followup-table{min-width:1240px;table-layout:fixed}.follow-type-cell{white-space:nowrap}.follow-content{min-width:0;color:#78675e;font-size:12px;line-height:1.65}.follow-content.completed{color:#5f4a42}.patient-cell b{display:block;color:#422923;font-size:14px}.patient-cell small{display:block;margin-top:3px;color:#8a786d;font-size:11px}.care-sub{display:block;margin-top:3px;color:#97867b;font-size:11px}.care-actions{display:flex;gap:6px;flex-wrap:wrap}.care-actions .btn{white-space:nowrap}
.patient-action-revisit{border-color:#dfc7b0!important;background:linear-gradient(145deg,#fffaf4,#f8ecdf)!important;color:#743a2b!important;box-shadow:0 3px 9px rgba(105,55,38,.06)!important}.patient-action-revisit:hover{border-color:#bd936c!important;background:#f8e7d7!important;box-shadow:0 7px 15px rgba(105,55,38,.12)!important}
.patient-action-view{border-color:#c8ddd3!important;background:linear-gradient(145deg,#f7fcf9,#eaf5ef)!important;color:#28644e!important}.patient-action-view:hover{border-color:#88b7a2!important;background:#e2f2e9!important;color:#205b46!important;box-shadow:0 6px 13px rgba(40,112,86,.12)!important}
.patient-action-followup{border-color:#e3cf9f!important;background:linear-gradient(145deg,#fffaf0,#fff2d9)!important;color:#7b581d!important}.patient-action-followup:hover{border-color:#c8a85f!important;background:#ffebc6!important;color:#674512!important;box-shadow:0 6px 13px rgba(169,110,25,.12)!important}
.follow-action-shift{border-color:#c4d6e3!important;background:linear-gradient(145deg,#f8fbfd,#e7f0f6)!important;color:#35647f!important}.follow-action-shift:hover{border-color:#82aac0!important;background:#dcebf3!important;color:#28566f!important;box-shadow:0 6px 13px rgba(50,107,141,.13)!important}
.follow-action-cancel{border-color:#edc7c2!important;background:linear-gradient(145deg,#fff8f7,#fbe8e5)!important;color:#a13f37!important}.follow-action-cancel:hover{border-color:#d99088!important;background:#f8deda!important;color:#8f3029!important;box-shadow:0 6px 13px rgba(180,58,49,.12)!important}
.follow-action-rx{border-color:#decba8!important;background:linear-gradient(145deg,#fffdf8,#f8eddc)!important;color:#765322!important}.follow-action-rx:hover{border-color:#c6a46a!important;background:#f6e4c7!important;color:#654318!important;box-shadow:0 6px 13px rgba(169,110,25,.12)!important}
.care-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:900;white-space:nowrap}.care-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.care-badge.pending{background:#fff3d9;color:#9a661c}.care-badge.today{background:#ffe4ca;color:#a65318}.care-badge.overdue{background:#fde3df;color:#aa3b32}.care-badge.completed{background:#def2e8;color:#226b51}.care-badge.cancelled{background:#ede9e4;color:#766b63}.care-badge.active{background:#e3f1ed;color:#2b725a}
.ground-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.ground-page-head .page-sub{margin-bottom:0}.ground-range{display:flex;align-items:center;gap:9px;min-width:250px}.ground-range label{flex:0 0 auto;color:#76665d;font-size:12px;font-weight:800}.ground-range .hc-select-wrap,.ground-range select{min-width:150px}
.ground-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.ground-kpi{position:relative;overflow:hidden;min-height:112px;padding:18px;border:1px solid #e3d2b7;border-radius:14px;background:linear-gradient(145deg,#fffefa,#fff7e9);box-shadow:0 8px 22px rgba(77,42,26,.07)}.ground-kpi:after{content:"";position:absolute;right:-25px;top:-30px;width:82px;height:82px;border-radius:50%;background:rgba(181,139,66,.10)}.ground-kpi-value{position:relative;z-index:1;color:#6d211d;font-size:30px;font-weight:900;line-height:1.15}.ground-kpi-label{position:relative;z-index:1;margin-top:9px;color:#78685e;font-size:13px;font-weight:800}.ground-kpi.pending .ground-kpi-value{color:#b33b32}.ground-kpi.amount .ground-kpi-value{color:#287056;font-size:25px}
.ground-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.ground-card-head .card-title{margin-bottom:0}.ground-card-note{margin-top:4px;color:#89786d;font-size:12px;line-height:1.6}.ground-date-control{display:flex;align-items:center;gap:9px;flex:0 0 auto}.ground-date-control label{color:#765e51;font-size:12px;font-weight:800}.ground-date-control input{width:166px}
.ground-arrival-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:12px}.ground-arrival-person{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px;border:1px solid #e6d8c4;border-radius:12px;background:#fffdf9}.ground-arrival-person-copy{display:flex;align-items:center;gap:12px;min-width:0}.ground-person-avatar{position:relative;display:grid;width:42px;height:42px;place-items:center;flex:0 0 42px;border:1px solid rgba(40,112,86,.24);border-radius:13px;background:linear-gradient(145deg,#f1faf6,#d7eee5);color:#287056;box-shadow:0 7px 16px rgba(40,112,86,.14),inset 0 1px 0 rgba(255,255,255,.9)}.ground-person-avatar:after{content:"";position:absolute;right:5px;bottom:5px;width:6px;height:6px;border:2px solid #f3faf7;border-radius:50%;background:#b58b42}.ground-person-avatar .ui-icon{width:21px;height:21px;margin:0;vertical-align:0;stroke-width:2}.ground-arrival-person-copy b{display:block;color:#4d3029;font-size:15px}.ground-arrival-person-copy>div>span{display:block;margin-top:2px;color:#907e72;font-size:11px}.ground-arrival-input{display:flex;align-items:center;gap:7px}.ground-arrival-input input{width:100px;text-align:center}.ground-arrival-input span{color:#806f64;font-size:12px;white-space:nowrap}.ground-save-row{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:14px}.ground-save-row small{margin-right:auto;color:#927f73;line-height:1.55}
.ground-pending-card{position:relative;border:2px solid #d9574e!important;background:linear-gradient(145deg,#fffdfb,#fff1ee)!important;box-shadow:0 10px 28px rgba(180,58,49,.14);animation:groundPendingPulse 2s ease-in-out infinite}.ground-pending-card .card-title{color:#982f29}.ground-pending-card .ground-card-note{color:#875b55}.ground-pending-count{display:inline-grid;min-width:29px;height:29px;padding:0 8px;place-items:center;border-radius:99px;background:#b43a31;color:#fff;font-size:12px;font-weight:900;box-shadow:0 0 0 5px rgba(180,58,49,.10)}@keyframes groundPendingPulse{0%,100%{border-color:#d9574e;box-shadow:0 9px 24px rgba(180,58,49,.12)}50%{border-color:#ae2923;box-shadow:0 0 0 5px rgba(190,53,45,.10),0 13px 32px rgba(180,58,49,.22)}}@media(prefers-reduced-motion:reduce){.ground-pending-card{animation:none}}.ground-table-wrap{overflow-x:auto;border:1px solid #ede2d2;border-radius:12px;background:#fff}.ground-table-wrap .data-table{min-width:860px}.ground-assign-control{display:flex;align-items:center;gap:7px;min-width:250px}.ground-assign-control .hc-select-wrap,.ground-assign-control select{min-width:150px}.ground-price{color:#287056;font-weight:900}.ground-rate{display:inline-flex;min-width:57px;justify-content:center;padding:4px 8px;border-radius:999px;background:#e3f2eb;color:#246b52;font-size:11px;font-weight:900}.ground-rate.warning{background:#fde5e1;color:#a63b33}.ground-staff-name{display:flex;align-items:center;gap:8px;color:#482c26;font-weight:900}.ground-staff-name:before{content:"";width:8px;height:8px;border-radius:50%;background:#287056;box-shadow:0 0 0 4px rgba(40,112,86,.10)}
@media(max-width:980px){.ground-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ground-page-head{align-items:stretch;flex-direction:column}.ground-range{min-width:0}}
@media(max-width:560px){.ground-kpis{grid-template-columns:1fr}.ground-card-head{flex-direction:column}.ground-date-control{width:100%}.ground-date-control input{flex:1;width:auto}.ground-arrival-person{align-items:flex-start;flex-direction:column}.ground-arrival-input{width:100%}.ground-arrival-input input{flex:1;width:auto}.ground-save-row{align-items:stretch;flex-direction:column}.ground-save-row .btn{width:100%}}
.follow-source-pill{display:inline-flex;margin-top:5px;padding:3px 7px;border-radius:999px;background:#e7f3ed;color:#287056;font-size:9px;font-weight:900}.follow-source-pill.manual{background:#f3ece2;color:#79592d}.follow-sequence-badge{display:inline-grid;width:23px;height:23px;margin-right:6px;place-items:center;border-radius:50%;background:#287056;color:#fff;font-size:11px;font-weight:900;line-height:1;vertical-align:middle;box-shadow:0 3px 8px rgba(40,112,86,.18)}.follow-type-title{color:#50372f;font-weight:900;vertical-align:middle}.follow-row-today td{background:#fff9e9!important}.follow-row-overdue td{background:#fff1ef!important}.follow-row-completed td{background:#f3fbf7!important}.follow-row-attention td{background:#fff0ee!important;border-top-color:#e8b6b0!important;border-bottom-color:#e8b6b0!important}.follow-feedback{min-width:230px;line-height:1.55}.follow-feedback b{color:#6f352f}.follow-alert{display:inline-flex;margin-top:4px;padding:3px 7px;border-radius:6px;background:#fde2df;color:#a9362f;font-size:11px;font-weight:900}
.patient-profile-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start;padding:18px;border:1px solid #dfcfb6;border-radius:14px;background:radial-gradient(circle at 92% 8%,rgba(181,139,66,.17),transparent 34%),linear-gradient(145deg,#fffdf8,#f8eddb)}.patient-profile-name{display:flex;align-items:center;gap:12px}.patient-avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(145deg,var(--wine),#963a32);color:#fff7e8;font-size:18px;font-weight:900;box-shadow:0 8px 18px rgba(91,27,23,.22)}.patient-profile-name h3{font-size:20px;color:#432923}.patient-profile-name p{margin-top:4px;color:#806f65;font-size:12px}.patient-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.patient-profile-item{padding:11px 12px;border:1px solid #eadfce;border-radius:10px;background:#fffdf9}.patient-profile-item span{display:block;color:#9a887d;font-size:10px}.patient-profile-item b{display:block;margin-top:4px;color:#514038;font-size:13px}
.care-timeline{position:relative;display:grid;gap:12px;margin-top:8px;padding-left:18px}.care-timeline:before{content:"";position:absolute;left:5px;top:8px;bottom:8px;width:2px;background:#d3cfc8}.care-timeline-item{position:relative;padding:12px 14px;border:1px solid #e9dece;border-radius:11px;background:#fffdf9}.care-timeline-item:before{content:"";position:absolute;left:-18px;top:18px;width:10px;height:10px;border:2px solid #fff;border-radius:50%;background:#a8a39d;box-shadow:0 0 0 2px #d5d1cb}.care-timeline-item.completed:before{background:#27765c;box-shadow:0 0 0 2px #92c0ae}.care-timeline-item.incomplete:before{background:#a8a39d;box-shadow:0 0 0 2px #d5d1cb}.care-timeline-item b{color:#492d27}.care-timeline-item small{display:block;margin-top:4px;color:#8c7b71}.care-timeline-note{display:block;margin-top:7px;padding:6px 9px;border-radius:7px;background:#f4f0e9;color:#6f6057;line-height:1.55}.care-timeline-note em{color:#5c4037;font-style:normal;font-weight:800}.care-empty{padding:30px;text-align:center;color:#8b7d72}
.follow-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.follow-form-grid .full{grid-column:1/-1}.care-modal-title{font-size:16px;font-weight:900;color:#442923}.care-modal-summary{margin:0 18px 15px;padding:12px 14px;border:1px solid #e4d5bd;border-radius:10px;background:#fff9ed;color:#68564c;font-size:13px;line-height:1.65}
@media(max-width:780px){.patient-profile-grid{grid-template-columns:1fr 1fr}.patient-profile-head{grid-template-columns:1fr}.follow-form-grid{grid-template-columns:1fr}.follow-form-grid .full{grid-column:auto}.care-searches .form-input,.care-searches .form-select{width:100%;max-width:none}.patient-link-head{align-items:flex-start;flex-direction:column}.revisit-history-head{align-items:flex-start;flex-direction:column}.revisit-history-controls{align-self:stretch;justify-content:flex-end}.revisit-history-track{grid-auto-columns:minmax(290px,88vw)}.revisit-history-card-body{grid-template-columns:1fr}.revisit-history-field.full{grid-column:auto}}

@media(max-width:1000px){.login-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header{align-items:flex-start}.user-info{max-width:58%}}
@media(max-width:768px){
  .login-page{padding:30px 16px}.login-brand h1,.login-brand .login-title{font-size:23px;letter-spacing:1.5px}.login-grid{grid-template-columns:1fr;max-width:440px}.login-card{min-height:170px}
  .header{position:relative;top:auto;padding:13px 15px;flex-direction:column}.brand-text h1{font-size:17px}.brand-text p{white-space:normal}.user-info{max-width:none;width:100%;justify-content:flex-start}
  .layout{min-height:calc(100vh - 150px)}.sidebar{position:sticky;top:0;width:72px;height:100vh;padding:15px 8px}.sidebar:before{display:none}.nav-item{justify-content:center;padding:12px 8px}.nav-item span:not(.nav-icon):not(.nav-badge){display:none}.nav-icon{display:inline-block!important}
  .main{padding:20px 14px 36px}.page-title{font-size:23px}.card{padding:15px}.kpi-grid{grid-template-columns:1fr 1fr;gap:10px}.kpi-card{min-height:105px;padding:16px}.kpi-value{font-size:26px}
  .store-card,.store-card-header{min-width:760px}.modal-box{width:94%;max-height:88vh}.modal-box>.card,.modal-box>.detail-item,.modal-box>p,.modal-box>div:not(.modal-header),.modal-box>button,.modal-box>label{margin-left:14px;margin-right:14px}
  .a5-clinical-paper{padding:18px}.a5-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.a5-field.span-3,.a5-field.span-4{grid-column:1/-1}.a5-question-grid{grid-template-columns:1fr}.a5-question{border-right:0}.a5-signature{grid-template-columns:1fr}
  .partner-rx-hero{padding:22px 20px}.partner-rx-hero .page-title{font-size:25px}.partner-rx-steps{overflow-x:auto}.partner-rx-step-line{width:24px;margin:0 7px}.partner-clinical-paper{padding:18px!important}.partner-clinical-paper .rx-paper-header{margin:-18px -18px 20px;padding:19px 18px}.partner-clinical-paper .rx-paper-header h2{font-size:23px;letter-spacing:.2px}.partner-clinical-paper .rx-paper-header .sub{font-size:10px;letter-spacing:1px}.partner-clinical-paper .rx-paper-header .sub:before,.partner-clinical-paper .rx-paper-header .sub:after{width:15px}.partner-submit-bar{position:static;align-items:stretch;flex-direction:column}.partner-submit-btn{width:100%}
}
@media(max-width:480px){.kpi-grid{grid-template-columns:1fr}.brand-text p{display:none}#current-user{display:none}.user-info{gap:6px}.btn-logout{padding:6px 9px}.rx-paper{padding:18px}.partner-rx-hero{padding:20px 16px}.partner-rx-steps{padding:9px}.partner-rx-step{font-size:11px}.partner-rx-step b{width:23px;height:23px}.partner-rx-step-line{width:12px;margin:0 4px}.a5-test-toolbar{align-items:stretch;flex-direction:column;gap:9px}.a5-test-toolbar-copy{align-items:flex-start;flex-direction:column;gap:5px}.a5-test-fill-btn{width:100%}.partner-clinical-paper .a5-fields{grid-template-columns:1fr}.partner-clinical-paper .a5-field.span-2,.partner-clinical-paper .a5-field.span-3{grid-column:1/-1}.partner-clinical-paper .a5-question{grid-template-columns:62px 1fr}.partner-clinical-paper .a5-checks{gap:6px}.partner-clinical-paper .a5-check{padding:4px 7px}}
@media(prefers-reduced-motion:reduce){.nav-item,.nav-icon{transition:none!important}.nav-item:hover,.nav-item:active,.nav-item.active:hover,.nav-item:hover .nav-icon,.nav-item.active:hover .nav-icon{transform:none!important}}

/* ===== 全站下拉框：统一为用药天数的米白选中样式，移除浏览器蓝色高亮 ===== */
.hc-select-wrap{position:relative;display:inline-flex;width:100%;min-width:0;flex:1 1 auto;vertical-align:middle}
.hc-select-native{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;border:0!important;opacity:0!important;pointer-events:none!important;white-space:nowrap!important}
.hc-select-trigger{display:flex;width:100%;min-width:0;min-height:43px;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border:1px solid #d9cebd;border-radius:10px;background:#fffdf9;color:#302821;font-family:"Microsoft YaHei","微软雅黑","PingFang SC","Noto Sans CJK SC",Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.5;text-align:left;cursor:pointer;box-sizing:border-box;transition:border-color .16s,box-shadow .16s,background .16s}
.hc-select-trigger:hover{border-color:#cbb693;background:#fffaf2}
.hc-select-trigger:focus-visible,.hc-select-wrap.is-open .hc-select-trigger{outline:0;border-color:var(--gold);box-shadow:0 0 0 3px rgba(181,139,66,.14);background:#fff}
.hc-select-trigger:disabled{cursor:not-allowed;background:#f3f0eb;color:#9b928b;box-shadow:none}
.hc-select-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hc-select-value.is-placeholder{color:#8b8179}
.hc-select-arrow{flex:0 0 auto;width:0;height:0;border-right:5px solid transparent;border-left:5px solid transparent;border-top:7px solid currentColor;color:#4d4039;transition:transform .18s ease}
.hc-select-wrap.is-open .hc-select-arrow{transform:rotate(180deg)}
.hc-select-popup{position:fixed;z-index:10000;display:grid;gap:2px;overflow-x:hidden;overflow-y:auto;max-height:288px;padding:5px;border:1px solid #d8c7ae;border-radius:8px;background:#fff;box-shadow:0 12px 26px rgba(72,43,28,.18);box-sizing:border-box;animation:hcSelectMenuIn .16s ease both;overscroll-behavior:contain}
.hc-select-popup[hidden]{display:none}
.hc-select-option{display:block;width:100%;min-height:40px;padding:8px 10px;border:0;border-radius:6px;background:#fff;color:#302821;font-family:"Microsoft YaHei","微软雅黑","PingFang SC","Noto Sans CJK SC",Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.35;text-align:left;cursor:pointer;box-sizing:border-box}
.hc-select-option:hover,.hc-select-option:focus-visible,.hc-select-option.is-active{outline:0;background:#f3ebe0;color:#6d1d1a}
.hc-select-option.is-selected{background:#f3ebe0;color:#6d1d1a;font-weight:500}
.hc-select-option:disabled{cursor:not-allowed;background:#faf8f5;color:#b1aaa4}
.hc-select-popup.is-compact .hc-select-option{min-height:34px;padding:6px 9px;font-size:14px}
.a5-field .hc-select-wrap{width:auto;flex:1 1 auto}
.a5-field .hc-select-trigger{height:40px;min-height:40px;padding:6px 9px;font-size:17px}
.rx-paper-item .hc-select-wrap{width:auto;flex:1 1 auto}
.rx-paper-item .hc-select-trigger{min-height:28px;padding:0 4px;border:0;border-radius:4px;background:transparent;box-shadow:none;font-size:13px}
.rx-paper-item .hc-select-trigger:hover,.rx-paper-item .hc-select-trigger:focus-visible,.rx-paper-item .hc-select-wrap.is-open .hc-select-trigger{border:0;background:#fbf4e9;box-shadow:none}
.hc-select-wrap.hc-select-compact{width:auto;min-width:96px;flex:0 0 auto}
.hc-select-wrap.hc-select-compact .hc-select-trigger{height:34px;min-height:34px;padding:0 10px 0 12px;border-color:#d9c7ad;border-radius:9px;background:#fffaf2;color:#5f493e;font-size:12px;font-weight:800}
.care-searches .hc-select-wrap{width:auto;min-width:190px;max-width:300px;flex:0 1 300px}
@keyframes hcSelectMenuIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:780px){.care-searches .hc-select-wrap{width:100%;max-width:none;flex:1 1 100%}}

/* ===== 2026-09 主界面焕新：动态中医运营中台 ===== */
#main-system{
  position:relative;isolation:isolate;overflow-x:clip;overflow-y:visible;min-height:100vh;
  --role-accent:#731f1c;--role-accent-rgb:115,31,28;
  background:linear-gradient(145deg,#f5f0e7 0%,#eee8de 54%,#f8f3e9 100%);
}
#main-system[data-role="doctor"]{--role-accent:#27765c;--role-accent-rgb:39,118,92}
#main-system[data-role="pharmacy"]{--role-accent:#765396;--role-accent-rgb:118,83,150}
#main-system[data-role="partner"]{--role-accent:#356f93;--role-accent-rgb:53,111,147}
#main-system:before,#main-system:after{content:"";position:fixed;pointer-events:none;z-index:0}
#main-system:before{
  inset:-22%;
  background:
    radial-gradient(circle at 18% 20%,rgba(115,31,28,.105),transparent 24%),
    radial-gradient(circle at 80% 15%,rgba(181,139,66,.17),transparent 27%),
    radial-gradient(circle at 70% 78%,rgba(39,118,92,.095),transparent 25%),
    radial-gradient(circle at 26% 82%,rgba(var(--role-accent-rgb),.08),transparent 23%);
  filter:blur(8px);transform:translate3d(0,0,0) scale(1.03);
  animation:hcAmbientDrift 22s ease-in-out infinite alternate;
}
#main-system:after{
  inset:0;
  background-image:linear-gradient(rgba(107,78,56,.023) 1px,transparent 1px),linear-gradient(90deg,rgba(107,78,56,.023) 1px,transparent 1px);
  background-size:42px 42px;opacity:.58;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.72),transparent 88%);mask-image:linear-gradient(to bottom,rgba(0,0,0,.72),transparent 88%);
  animation:hcPatternDrift 34s linear infinite;
}
#main-system>.header,#main-system>.layout{position:relative;z-index:1}
#main-system .layout:before{
  content:"";position:fixed;z-index:0;left:0;top:84px;bottom:0;width:252px;pointer-events:none;
  background:linear-gradient(165deg,#451211 0%,#671b19 42%,#7a2420 74%,#551514 100%);background-size:180% 180%;
  box-shadow:10px 0 32px rgba(61,22,18,.12);animation:hcSidebarTone 18s ease-in-out infinite alternate;
}
@keyframes hcAmbientDrift{0%{transform:translate3d(-1.5%,-1%,0) scale(1.03) rotate(0deg)}50%{transform:translate3d(2%,1.3%,0) scale(1.07) rotate(1deg)}100%{transform:translate3d(-.5%,2.2%,0) scale(1.04) rotate(-1deg)}}
@keyframes hcPatternDrift{from{background-position:0 0,0 0}to{background-position:84px 42px,42px 84px}}

/* 顶部品牌栏 */
#main-system .header{
  position:sticky;top:0;z-index:30;min-height:84px;padding:12px 26px;
  background:linear-gradient(100deg,rgba(255,253,249,.94),rgba(255,255,255,.86) 55%,rgba(251,246,236,.93));
  border-bottom:1px solid rgba(181,139,66,.28);box-shadow:0 9px 28px rgba(73,39,27,.075);
  -webkit-backdrop-filter:blur(18px) saturate(1.12);backdrop-filter:blur(18px) saturate(1.12);
  overflow:visible;
}
#main-system .header:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(181,139,66,.2) 12%,var(--role-accent) 48%,rgba(181,139,66,.5) 72%,transparent 100%);background-size:180% 100%;opacity:.68;animation:hcHeaderLine 9s ease-in-out infinite alternate;pointer-events:none}
@keyframes hcHeaderLine{from{background-position:0 50%}to{background-position:100% 50%}}
#main-system .brand{position:relative;min-width:318px;padding-right:25px}
#main-system .brand:after{content:"";position:absolute;right:0;top:8px;width:1px;height:38px;background:linear-gradient(transparent,rgba(181,139,66,.48),transparent)}
#main-system .header-logo{position:relative;width:56px;height:56px;border-color:rgba(181,139,66,.48);box-shadow:0 8px 23px rgba(83,33,23,.12),0 0 0 5px rgba(var(--role-accent-rgb),.045);animation:hcLogoFloat 7s ease-in-out infinite}
@keyframes hcLogoFloat{0%,100%{transform:translateY(0);box-shadow:0 8px 23px rgba(83,33,23,.12),0 0 0 5px rgba(var(--role-accent-rgb),.045)}50%{transform:translateY(-2px);box-shadow:0 12px 28px rgba(83,33,23,.16),0 0 0 8px rgba(var(--role-accent-rgb),.065)}}
#main-system .brand-text h1{font-size:20px;font-weight:900;letter-spacing:1.7px;background:linear-gradient(90deg,#361d1b,var(--role-accent) 70%,#8d6630);-webkit-background-clip:text;background-clip:text;color:transparent}
#main-system .brand-text p{display:flex;align-items:center;gap:7px;color:#8d7b70;letter-spacing:1.2px}
#main-system .brand-text p:before{content:"";width:18px;height:2px;border-radius:9px;background:linear-gradient(90deg,var(--role-accent),var(--gold))}
#main-system .user-info{position:relative;padding:7px 8px 7px 10px;border:1px solid rgba(215,201,180,.78);border-radius:14px;background:rgba(255,255,255,.62);box-shadow:inset 0 1px 0 rgba(255,255,255,.86)}
#main-system .user-role{background:rgba(var(--role-accent-rgb),.085);border-color:rgba(var(--role-accent-rgb),.20);color:var(--role-accent)}
#main-system .btn-logout{background:rgba(255,255,255,.84)}

/* 侧边导航 */
#main-system .sidebar{
  position:sticky;top:84px;z-index:2;align-self:flex-start;width:252px;height:calc(100vh - 84px);padding:21px 15px;
  background:linear-gradient(165deg,#451211 0%,#671b19 42%,#7a2420 74%,#551514 100%);background-size:180% 180%;
  border-right:1px solid rgba(215,182,110,.2);box-shadow:10px 0 32px rgba(61,22,18,.12);animation:hcSidebarTone 18s ease-in-out infinite alternate;
}
@keyframes hcSidebarTone{from{background-position:10% 10%}to{background-position:90% 90%}}
#main-system .sidebar:before{content:"";display:block;position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 22% 2%,rgba(255,230,181,.13),transparent 24%),linear-gradient(115deg,transparent 12%,rgba(255,255,255,.035) 48%,transparent 70%);background-size:auto,230% 100%;animation:hcSidebarGlow 12s ease-in-out infinite}
#main-system .sidebar:after{content:"泓慈 · 四端协同";position:absolute;left:28px;bottom:18px;z-index:0;color:rgba(255,239,213,.26);font-size:10px;font-weight:700;letter-spacing:3px;writing-mode:vertical-rl;pointer-events:none}
@keyframes hcSidebarGlow{0%,100%{background-position:center,130% 0}50%{background-position:center,-70% 0}}
#main-system .sidebar>div{position:relative;z-index:1}
#main-system .nav-item{min-height:48px;margin:5px 0;padding:12px 14px;border-radius:12px;color:#eadfd8;overflow:hidden;isolation:isolate}
#main-system .nav-item:before{content:"";position:absolute;left:0;top:50%;z-index:-1;width:4px;height:0;border-radius:0 5px 5px 0;background:linear-gradient(180deg,#f2d999,#c69238);transform:translateY(-50%);transition:height .22s ease}
#main-system .nav-item:after{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.14),rgba(255,255,255,.035));opacity:0;transition:opacity .22s ease}
#main-system .nav-item:hover:after{opacity:1}
#main-system .nav-item.active:before{height:27px}
#main-system .nav-item.active{color:#641c19;background:linear-gradient(90deg,#fff8e9,#fffdf7);box-shadow:0 9px 22px rgba(30,7,6,.2),inset 0 0 0 1px rgba(244,219,167,.65)}
#main-system .nav-icon{display:grid;flex:0 0 27px;width:27px;height:27px;place-items:center;border-radius:8px;background:rgba(255,255,255,.07)}
#main-system .nav-item.active .nav-icon{background:rgba(115,31,28,.075);box-shadow:inset 0 0 0 1px rgba(115,31,28,.08)}

/* 内容区、卡片与页面切换 */
#main-system .main{position:relative;z-index:1;min-width:0;padding:30px 32px 52px;background:transparent}
#main-system .main:before{content:"泓慈";position:fixed;right:3.5vw;bottom:1.5vh;z-index:-1;color:rgba(var(--role-accent-rgb),.025);font:900 clamp(120px,18vw,280px)/1 "STKaiti","KaiTi","Microsoft YaHei",sans-serif;letter-spacing:-22px;transform:rotate(-7deg);pointer-events:none}
#main-system .main.page-enter{animation:hcPageEnter .42s cubic-bezier(.2,.72,.22,1) both}
@keyframes hcPageEnter{from{opacity:.25;transform:translateY(10px) scale(.996)}to{opacity:1;transform:translateY(0) scale(1)}}
#main-system .card,#main-system .detail-panel,#main-system .kpi-card{background-color:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(11px);backdrop-filter:blur(11px);border-color:rgba(222,207,183,.86);box-shadow:0 13px 34px rgba(74,39,27,.075),inset 0 1px 0 rgba(255,255,255,.78)}
#main-system .card{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
#main-system .card:hover{border-color:rgba(181,139,66,.55);box-shadow:0 17px 40px rgba(74,39,27,.095),inset 0 1px 0 #fff}
#main-system .page-title{color:#3a2420;font-size:29px;font-weight:900;letter-spacing:.8px}
#main-system .page-sub{color:#7d6d64}

/* 角色工作台主视觉 */
.workspace-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(300px,1.15fr) minmax(390px,.85fr);gap:24px;align-items:stretch;overflow:hidden;margin-bottom:20px;padding:26px 28px;border:1px solid rgba(181,139,66,.36);border-radius:21px;background:linear-gradient(132deg,rgba(255,253,248,.97),rgba(255,255,255,.88) 56%,rgba(var(--hero-rgb,115,31,28),.095));box-shadow:0 18px 48px rgba(70,35,24,.10),inset 0 1px 0 rgba(255,255,255,.88)}
.workspace-hero:before{content:"";position:absolute;z-index:-1;width:310px;height:310px;right:-94px;top:-174px;border:1px solid rgba(var(--hero-rgb,115,31,28),.14);border-radius:50%;box-shadow:0 0 0 38px rgba(var(--hero-rgb,115,31,28),.035),0 0 0 78px rgba(181,139,66,.025);animation:hcHeroOrbit 15s ease-in-out infinite alternate}
.workspace-hero:after{content:"";position:absolute;z-index:-1;left:-20%;bottom:-2px;width:55%;height:2px;background:linear-gradient(90deg,transparent,var(--hero-accent,#731f1c),#d2a85b,transparent);animation:hcHeroSweep 7s ease-in-out infinite}
@keyframes hcHeroOrbit{from{transform:translate(0,0) rotate(0)}to{transform:translate(-22px,20px) rotate(18deg)}}
@keyframes hcHeroSweep{0%,100%{transform:translateX(-20%);opacity:.25}50%{transform:translateX(145%);opacity:.75}}
.workspace-hero.tone-hq{--hero-accent:#731f1c;--hero-rgb:115,31,28}.workspace-hero.tone-doctor{--hero-accent:#27765c;--hero-rgb:39,118,92}.workspace-hero.tone-pharmacy{--hero-accent:#765396;--hero-rgb:118,83,150}
.workspace-hero-copy{display:flex;min-width:0;flex-direction:column;justify-content:center}
.workspace-hero-kicker{display:inline-flex;width:max-content;align-items:center;gap:7px;margin-bottom:12px;padding:5px 10px;border:1px solid rgba(var(--hero-rgb),.16);border-radius:99px;background:rgba(var(--hero-rgb),.07);color:var(--hero-accent);font-size:11px;font-weight:900;letter-spacing:1.2px}
.workspace-hero-kicker:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--hero-accent);box-shadow:0 0 0 4px rgba(var(--hero-rgb),.10)}
.workspace-hero-title{margin:0 0 8px;color:#39231f;font-size:clamp(25px,2.1vw,34px);font-weight:900;line-height:1.28;letter-spacing:1.8px}
.workspace-hero-sub{max-width:650px;color:#76675e;font-size:14px;line-height:1.8}
.workspace-hero-meta{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin-top:16px;color:#8b7b71;font-size:12px}
.workspace-hero-state{display:inline-flex;align-items:center;gap:6px;color:var(--hero-accent);font-weight:800}.workspace-hero-state:before{content:"";width:7px;height:7px;border-radius:50%;background:#31a477;box-shadow:0 0 0 4px rgba(49,164,119,.11)}
.workspace-hero-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}
.workspace-hero-btn{display:inline-flex;min-height:38px;align-items:center;justify-content:center;padding:8px 15px;border:1px solid rgba(var(--hero-rgb),.20);border-radius:10px;background:rgba(255,255,255,.78);color:var(--hero-accent);font-family:inherit;font-size:13px;font-weight:800;box-shadow:0 5px 13px rgba(74,39,27,.055);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.workspace-hero-btn:hover{transform:translateY(-2px);background:#fff;box-shadow:0 9px 19px rgba(74,39,27,.10)}
.workspace-hero-btn.primary{border-color:var(--hero-accent);background:var(--hero-accent);color:#fff}
.workspace-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(105px,1fr));gap:10px;align-content:center}
.workspace-hero-stat{position:relative;min-height:116px;padding:17px 15px;border:1px solid rgba(215,201,180,.78);border-radius:15px;background:rgba(255,255,255,.67);box-shadow:inset 0 1px 0 #fff;overflow:hidden;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.workspace-hero-stat:after{content:"";position:absolute;right:-20px;top:-22px;width:66px;height:66px;border-radius:50%;background:rgba(var(--hero-rgb),.065)}
.workspace-hero-stat:hover{transform:translateY(-3px);border-color:rgba(var(--hero-rgb),.30);box-shadow:0 10px 23px rgba(74,39,27,.085),inset 0 1px 0 #fff}
.workspace-hero-stat b{position:relative;z-index:1;display:block;color:var(--hero-accent);font-size:29px;font-weight:900;line-height:1.15}
.workspace-hero-stat span{position:relative;z-index:1;display:block;margin-top:9px;color:#63544d;font-size:12px;font-weight:800}
.workspace-hero-stat small{position:relative;z-index:1;display:block;margin-top:3px;color:#9a8c82;font-size:10px}

/* 门店接诊页沿用专属流程头，并加入同一套呼吸高光 */
#main-system .partner-rx-hero{border-color:rgba(181,139,66,.42);background:radial-gradient(circle at 88% 18%,rgba(var(--role-accent-rgb),.11),transparent 29%),linear-gradient(135deg,rgba(255,253,248,.97) 0%,rgba(251,243,229,.94) 58%,rgba(244,228,202,.9) 100%);box-shadow:0 18px 45px rgba(83,37,24,.105),inset 0 1px 0 #fff}
#main-system .partner-rx-hero:before{content:"";position:absolute;left:-38%;bottom:0;width:55%;height:2px;background:linear-gradient(90deg,transparent,#356f93,#b58b42,transparent);animation:hcHeroSweep 7s ease-in-out infinite}

/* 总部智能开方测试台 */
.ai-rx-test-page{--ai-blue:#365f84;--ai-blue-rgb:54,95,132;--ai-green:#26745d;--ai-amber:#a8711f;--ai-red:#9b3a35}
.ai-test-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:24px;overflow:hidden;margin-bottom:16px;padding:27px 29px;border:1px solid rgba(54,95,132,.24);border-radius:22px;background:radial-gradient(circle at 88% 5%,rgba(54,95,132,.13),transparent 31%),linear-gradient(132deg,rgba(255,255,255,.98),rgba(247,250,252,.94) 58%,rgba(229,239,246,.91));box-shadow:0 18px 46px rgba(54,69,82,.11),inset 0 1px 0 #fff}
.ai-test-hero:before{content:"";position:absolute;z-index:-1;right:-83px;top:-126px;width:260px;height:260px;border:1px solid rgba(54,95,132,.17);border-radius:50%;box-shadow:0 0 0 35px rgba(54,95,132,.035),0 0 0 72px rgba(184,149,106,.025)}
.ai-test-kicker{display:inline-flex;align-items:center;gap:7px;width:max-content;margin-bottom:12px;padding:5px 11px;border:1px solid rgba(54,95,132,.18);border-radius:99px;background:rgba(54,95,132,.075);color:var(--ai-blue);font-size:11px;font-weight:900;letter-spacing:1.1px}
.ai-test-kicker:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ai-blue);box-shadow:0 0 0 4px rgba(54,95,132,.11)}
.ai-test-hero h2{margin:0;color:#2f2924;font-size:clamp(27px,2.2vw,35px);font-weight:900;line-height:1.25;letter-spacing:1.2px}.ai-test-hero h2 em{display:inline-flex;vertical-align:middle;margin-left:8px;padding:4px 9px;border-radius:8px;background:#7a2420;color:#fff;font-size:11px;font-style:normal;letter-spacing:.5px;box-shadow:0 5px 12px rgba(122,36,32,.18)}
.ai-test-hero-copy p{max-width:720px;margin-top:10px;color:#74685f;font-size:13px;line-height:1.8}.ai-test-hero-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}.ai-test-hero-meta span{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid rgba(54,95,132,.15);border-radius:9px;background:rgba(255,255,255,.72);color:#536675;font-size:11px;font-weight:700}.ai-test-hero-meta span:before{content:"";width:6px;height:6px;border-radius:50%;background:#3aa17e}
.ai-test-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:center}.ai-test-status{position:relative;min-height:88px;padding:15px 15px 13px;border:1px solid rgba(215,201,180,.76);border-radius:15px;background:rgba(255,255,255,.76);box-shadow:inset 0 1px 0 #fff}.ai-test-status b{display:block;margin-bottom:4px;color:#4b413a;font-size:12px}.ai-test-status small{color:#8b7c72;font-size:10px}.ai-test-status i{position:absolute;right:13px;top:14px;width:9px;height:9px;border-radius:50%;background:#aaa;box-shadow:0 0 0 5px rgba(120,120,120,.08)}.ai-test-status.ready i{background:#2c9673;box-shadow:0 0 0 5px rgba(44,150,115,.11)}.ai-test-status.wait i{background:#c58a31;box-shadow:0 0 0 5px rgba(197,138,49,.11)}
.ai-test-notice{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;padding:13px 15px;border:1px solid rgba(155,58,53,.18);border-radius:13px;background:linear-gradient(90deg,rgba(155,58,53,.065),rgba(255,255,255,.7));color:#705b56;font-size:12px;line-height:1.75}.ai-test-notice>span{display:grid;flex:0 0 25px;width:25px;height:25px;place-items:center;border-radius:50%;background:#9b3a35;color:#fff;font-weight:900}.ai-test-notice b{color:#81332f}
.ai-test-workspace{display:grid;grid-template-columns:minmax(360px,.82fr) minmax(520px,1.18fr);gap:16px;align-items:start}.ai-test-card{padding:20px!important;border-radius:17px!important}.ai-test-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:17px;padding-bottom:13px;border-bottom:1px dashed rgba(184,149,106,.35)}.ai-test-card-head h3{display:flex;align-items:center;gap:9px;color:#3e3029;font-size:16px}.ai-test-step{display:grid;flex:0 0 28px;width:28px;height:28px;place-items:center;border-radius:9px;background:linear-gradient(145deg,#365f84,#294c6c);color:#fff;font-size:12px;box-shadow:0 6px 13px rgba(54,95,132,.2)}.ai-test-card-head p{margin-top:3px;color:#918278;font-size:11px}.ai-test-isolated{padding:4px 8px;border-radius:7px;background:#edf3f7;color:#496d89;font-size:10px;font-weight:800}
.ai-test-actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-top:16px;padding-top:15px;border-top:1px dashed rgba(184,149,106,.32)}.ai-test-run-btn{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:9px 18px;border:0;border-radius:10px;background:linear-gradient(135deg,#365f84,#284a68);color:#fff;font-family:inherit;font-size:13px;font-weight:800;cursor:pointer;box-shadow:0 9px 20px rgba(54,95,132,.22);transition:transform .18s ease,box-shadow .18s ease}.ai-test-run-btn:hover{transform:translateY(-2px);box-shadow:0 12px 25px rgba(54,95,132,.27)}
.ai-test-output-card{position:sticky;top:105px;min-height:520px}.ai-test-run-state{padding:5px 9px;border-radius:99px;background:#ece9e5;color:#81756d;font-size:10px;font-weight:800}.ai-test-run-state.done{background:#e5f3ee;color:#26745d}.ai-test-run-state.returned{background:#f9e8e5;color:#9b3a35}.ai-test-empty{display:grid;min-height:330px;place-items:center;border:1px dashed rgba(54,95,132,.24);border-radius:14px;background:linear-gradient(145deg,rgba(246,250,252,.8),rgba(255,255,255,.55));text-align:center}.ai-test-empty-inner{max-width:300px;padding:28px}.ai-test-empty-icon{display:grid;width:58px;height:58px;margin:0 auto 13px;place-items:center;border-radius:18px;background:rgba(54,95,132,.09);color:#365f84;font-size:22px}.ai-test-empty b{display:block;color:#5e5149;font-size:13px}.ai-test-empty p{margin-top:5px;color:#9b8e85;font-size:11px;line-height:1.65}
.ai-test-single-input label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px;color:#5b4b43;font-size:13px;font-weight:900}.ai-test-single-input label small{padding:4px 8px;border-radius:7px;background:#edf3f7;color:#496d89;font-size:9px}.ai-test-patient-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:13px}.ai-test-compact-field{position:relative}.ai-test-compact-field label{justify-content:flex-start;margin-bottom:6px;font-size:11px}.ai-test-compact-field input{width:100%;height:42px;padding:0 43px 0 12px;border:1px solid rgba(54,95,132,.22);border-radius:10px;background:#fffdfa;color:#443730;font-family:inherit;font-size:14px;font-weight:800;outline:0}.ai-test-compact-field input:focus{border-color:#47789f;box-shadow:0 0 0 3px rgba(54,95,132,.10)}.ai-test-field-unit{position:absolute;right:12px;bottom:12px;color:#8d7f76;font-size:11px;font-weight:800}.ai-test-chief-input{width:100%;min-height:220px;padding:16px 17px!important;border:1px solid rgba(54,95,132,.24)!important;border-radius:13px!important;background:linear-gradient(145deg,#fffdfa,#f9fbfc)!important;color:#443730!important;font-family:inherit;font-size:14px!important;line-height:1.9!important;resize:vertical;box-shadow:inset 0 1px 5px rgba(55,68,78,.035)}.ai-test-chief-input:focus{border-color:#47789f!important;box-shadow:0 0 0 3px rgba(54,95,132,.10),inset 0 1px 5px rgba(55,68,78,.035)!important}.ai-test-chief-tip{margin-top:9px;padding:9px 11px;border-radius:9px;background:#f7f2e8;color:#8a7454;font-size:10px;line-height:1.65}
.ai-test-rx-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:6px;margin-bottom:9px}.ai-test-rx-metric{min-width:0;padding:7px 9px;border:1px solid rgba(54,95,132,.13);border-radius:8px;background:#f6fafc}.ai-test-rx-metric span{display:block;color:#91867f;font-size:8px}.ai-test-rx-metric b{display:block;margin-top:2px;color:#365f84;font-size:12px}.ai-test-match-line{margin-bottom:9px;padding:7px 9px;border:1px solid rgba(38,116,93,.14);border-radius:8px;background:#f2f8f5;color:#6d756e;font-size:9px;line-height:1.6}.ai-test-match-line b{color:#26745d}.ai-test-match-line.warn{border-color:rgba(184,123,35,.22);background:#fff8ea;color:#8a662e}.ai-test-match-line.warn b{color:#a66a16}.ai-test-match-line.danger{border-color:rgba(166,48,42,.28);background:#fff1ef;color:#913932;box-shadow:0 0 0 3px rgba(166,48,42,.05)}.ai-test-match-line.danger b{color:#a1302a}.ai-test-medicine-sections{display:grid;gap:9px}.ai-test-medicine-section{padding:9px;border:1px solid rgba(54,95,132,.16);border-radius:11px;background:#fbfdff}.ai-test-medicine-section.add{border-color:rgba(38,116,93,.20);background:#f8fcfa}.ai-test-medicine-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.ai-test-medicine-head b{color:#3f607a;font-size:11px}.ai-test-medicine-section.add .ai-test-medicine-head b{color:#26745d}.ai-test-medicine-head span{padding:2px 6px;border-radius:99px;background:#eaf1f6;color:#52718a;font-size:8px;font-weight:800}.ai-test-medicine-section.add .ai-test-medicine-head span{background:#e4f2ec;color:#26745d}.ai-test-medicine-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:5px}.ai-test-medicine-item{display:flex;min-width:0;min-height:37px;align-items:center;justify-content:space-between;gap:6px;padding:5px 7px;border:1px solid rgba(54,95,132,.13);border-radius:7px;background:#fff;box-shadow:0 2px 6px rgba(54,69,82,.035)}.ai-test-medicine-item.add{border-color:rgba(38,116,93,.17);background:#fff}.ai-test-medicine-item span{min-width:0;overflow:hidden;color:#4f443d;font-size:10px;font-weight:800;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.ai-test-medicine-item b{flex:0 0 auto;color:#8a2520;font-size:10px;font-weight:900;white-space:nowrap}.ai-test-rx-note{margin-top:8px;color:#95867c;font-size:8px;line-height:1.55}
.ai-test-lower{display:grid;grid-template-columns:1fr;gap:16px;margin-top:16px}.ai-test-review-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border:1px solid rgba(54,95,132,.14);border-radius:12px;background:linear-gradient(90deg,#f7fafc,#fffdfa)}.ai-test-review-doctor span{display:block;color:#978a81;font-size:9px}.ai-test-review-doctor b{display:block;margin-top:3px;color:#365f84;font-size:14px}.ai-test-review-copy{max-width:720px;color:#776b63;font-size:10px;line-height:1.7}.ai-test-review-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}.ai-test-approve{background:#26745d!important;border-color:#26745d!important}.ai-test-return{background:#fff4f2!important;border-color:rgba(155,58,53,.22)!important;color:#9b3a35!important}
.ai-test-history-card{margin-top:16px}.ai-test-history-list{display:grid;gap:9px}.ai-test-history-item{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(260px,1.7fr) minmax(130px,.7fr) minmax(105px,.55fr) auto;gap:12px;align-items:center;padding:12px 13px;border:1px solid rgba(215,201,180,.68);border-radius:12px;background:rgba(255,253,249,.76)}.ai-test-history-item strong{display:block;color:#493a32;font-size:12px}.ai-test-history-item small{display:block;margin-top:2px;color:#988b82;font-size:9px}.ai-test-history-item span{color:#74675f;font-size:10px}.ai-test-history-status{display:inline-flex!important;width:max-content;align-items:center;gap:5px;padding:4px 8px;border-radius:99px;font-weight:800}.ai-test-history-status.approved{background:#e5f3ee;color:#26745d}.ai-test-history-status.returned{background:#f9e8e5;color:#9b3a35}.ai-test-history-actions{display:flex;gap:6px}.ai-test-history-actions button{padding:5px 8px;border:1px solid rgba(54,95,132,.16);border-radius:7px;background:#fff;color:#466985;font-family:inherit;font-size:10px;cursor:pointer}.ai-test-history-actions button.danger{color:#9b3a35;border-color:rgba(155,58,53,.16)}
@media(max-width:1180px){.ai-test-hero,.ai-test-workspace,.ai-test-lower{grid-template-columns:1fr}.ai-test-output-card{position:relative;top:auto;min-height:0}.ai-test-history-item{grid-template-columns:1fr 1fr 1fr}.ai-test-history-actions{grid-column:1/-1}}
@media(max-width:700px){.ai-test-hero{padding:21px 18px}.ai-test-status-grid{grid-template-columns:1fr 1fr}.ai-test-lower{grid-template-columns:1fr}.ai-test-history-item{grid-template-columns:1fr}.ai-test-patient-row{grid-template-columns:1fr}.ai-test-medicine-grid{grid-template-columns:repeat(auto-fit,minmax(92px,1fr))}}

/* V9核心 + 保密附录A：三项开方依据、统一缩放至目标+80g与中性化调配指令 */
.ai-test-v7-badge{display:inline-flex;align-items:center;gap:6px;margin-left:7px;padding:4px 8px;border:1px solid rgba(38,116,93,.2);border-radius:99px;background:#edf8f3;color:#26745d;font-size:9px;font-style:normal;font-weight:900;vertical-align:middle}.ai-test-v7-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:#2f9b78}
.ai-test-clinical-grid{display:grid;gap:11px}.ai-test-clinical-field{padding:11px;border:1px solid rgba(54,95,132,.14);border-radius:12px;background:linear-gradient(145deg,rgba(255,253,250,.9),rgba(247,250,252,.72))}.ai-test-clinical-field label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px;color:#51433c;font-size:11px;font-weight:900}.ai-test-clinical-field label span{display:grid;flex:0 0 22px;width:22px;height:22px;place-items:center;margin-right:7px;border-radius:7px;background:#365f84;color:#fff;font-size:9px}.ai-test-clinical-field label small{margin-left:auto;padding:3px 7px;border-radius:7px;background:#edf3f7;color:#557188;font-size:8px}.ai-test-clinical-input{width:100%;min-height:88px;padding:11px 12px!important;border:1px solid rgba(54,95,132,.18)!important;border-radius:9px!important;background:#fff!important;color:#443730!important;font:inherit!important;font-size:12px!important;line-height:1.75!important;resize:vertical}.ai-test-clinical-field.primary .ai-test-clinical-input{min-height:125px}.ai-test-clinical-input:focus{border-color:#47789f!important;box-shadow:0 0 0 3px rgba(54,95,132,.09)!important}
.ai-test-compact-field select{width:100%;height:42px;padding:0 34px 0 12px;border:1px solid rgba(54,95,132,.22);border-radius:10px;background:#fffdfa;color:#443730;font-family:inherit;font-size:12px;font-weight:800;outline:0}.ai-test-compact-field select:focus{border-color:#47789f;box-shadow:0 0 0 3px rgba(54,95,132,.10)}
.ai-test-v7-tip{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:start;margin-top:11px;padding:10px 12px;border:1px solid rgba(168,113,31,.18);border-radius:10px;background:#fff8eb;color:#80683f;font-size:9px;line-height:1.7}.ai-test-v7-tip b{display:grid;width:22px;height:22px;place-items:center;border-radius:7px;background:#a8711f;color:#fff;font-size:10px}
.ai-test-doc-warning{margin:9px 0;padding:8px 10px;border:1px solid rgba(155,58,53,.2);border-radius:9px;background:#fff4f2;color:#8f433e;font-size:9px;line-height:1.65}.ai-test-doc-warning b{color:#8b2d29}
.ai-test-calc-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:9px 0}.ai-test-calc-step{position:relative;min-width:0;padding:8px 9px;border:1px solid rgba(54,95,132,.14);border-radius:9px;background:#f8fbfd}.ai-test-calc-step:not(:last-child):after{content:"›";position:absolute;right:-6px;top:50%;z-index:1;display:grid;width:12px;height:12px;place-items:center;border-radius:50%;background:#fff;color:#60809a;font-size:11px;transform:translateY(-50%)}.ai-test-calc-step span{display:block;color:#94877e;font-size:8px}.ai-test-calc-step b{display:block;margin-top:3px;color:#365f84;font-size:11px;line-height:1.25}.ai-test-calc-step.final{border-color:rgba(38,116,93,.2);background:#eef8f4}.ai-test-calc-step.final b{color:#26745d}
.ai-test-medicine-section.mix{border-color:rgba(118,83,150,.23);background:linear-gradient(135deg,#fbf8fe,#f6f1fa)}.ai-test-medicine-section.mix .ai-test-medicine-head b{color:#72518e}.ai-test-medicine-section.mix .ai-test-medicine-head span{background:#eee6f4;color:#72518e}.ai-test-mix-instruction{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border:1px solid rgba(118,83,150,.2);border-radius:10px;background:#fff;box-shadow:0 5px 14px rgba(86,64,101,.06)}.ai-test-mix-instruction div{min-width:0}.ai-test-mix-instruction span{display:block;color:#8d7e94;font-size:8px}.ai-test-mix-instruction b{display:block;margin-top:3px;color:#513e5f;font-size:13px}.ai-test-mix-instruction strong{flex:0 0 auto;color:#73518d;font-size:16px}.ai-test-safety-stack{display:grid;gap:6px;margin:9px 0}.ai-test-safety-item{padding:7px 9px;border:1px solid rgba(168,113,31,.2);border-radius:8px;background:#fff9ed;color:#866632;font-size:9px;line-height:1.6}.ai-test-safety-item.danger{border-color:rgba(155,58,53,.22);background:#fff3f1;color:#91413b}.ai-test-safety-item b{margin-right:5px}
.ai-test-source-ledger{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:8px 0}.ai-test-source-ledger div{padding:7px 8px;border:1px solid rgba(54,95,132,.12);border-radius:8px;background:#fbfcfd}.ai-test-source-ledger span{display:block;color:#978a81;font-size:8px}.ai-test-source-ledger b{display:block;margin-top:3px;overflow:hidden;color:#5b514b;font-size:9px;line-height:1.5;text-overflow:ellipsis;white-space:nowrap}
.ai-semantic-panel{margin-top:12px;border:1px solid rgba(54,95,132,.22);border-radius:14px;background:linear-gradient(145deg,#f5f9fc,#fffdfa);overflow:hidden}.ai-semantic-panel.empty{border-style:dashed;background:rgba(248,251,252,.72)}.ai-semantic-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 13px;border-bottom:1px dashed rgba(54,95,132,.18)}.ai-semantic-head b{display:flex;align-items:center;gap:8px;color:#365f84;font-size:12px}.ai-semantic-head b:before{content:"析";display:grid;width:25px;height:25px;place-items:center;border-radius:8px;background:linear-gradient(145deg,#365f84,#294c6c);color:#fff;font-size:9px;box-shadow:0 5px 11px rgba(54,95,132,.18)}.ai-semantic-head span{display:inline-flex;padding:4px 8px;border-radius:99px;background:#e7f2f7;color:#446d8c;font-size:8px;font-weight:900;white-space:nowrap}.ai-semantic-empty{padding:17px 14px;color:#887b73;font-size:10px;line-height:1.7;text-align:center}.ai-semantic-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:10px 12px 0}.ai-semantic-metric{padding:7px 8px;border:1px solid rgba(54,95,132,.12);border-radius:8px;background:#fff}.ai-semantic-metric span{display:block;color:#958880;font-size:8px}.ai-semantic-metric b{display:block;margin-top:3px;color:#365f84;font-size:12px}.ai-semantic-sections{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 12px 12px}.ai-semantic-section{min-width:0;padding:9px 10px;border:1px solid rgba(215,201,180,.58);border-radius:10px;background:rgba(255,255,255,.76)}.ai-semantic-section.full{grid-column:1/-1}.ai-semantic-section h5{margin:0 0 7px;color:#5a4c44;font-size:9px}.ai-semantic-chips{display:flex;flex-wrap:wrap;gap:5px}.ai-semantic-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:7px;background:#e9f2f7;color:#365f84;font-size:8px;font-weight:800}.ai-semantic-chip:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.ai-semantic-chip.history{background:#f2eee8;color:#877565}.ai-semantic-chip.negative{background:#ecebea;color:#756c66;text-decoration:line-through}.ai-semantic-chip.warn{background:#fff0d7;color:#9a6418}.ai-semantic-chip.danger{background:#fbe8e5;color:#963c36}.ai-semantic-list{display:grid;gap:5px}.ai-semantic-list-item{padding:6px 7px;border-left:3px solid #6a8aa3;border-radius:7px;background:#f8fbfd;color:#71665f;font-size:8px;line-height:1.55}.ai-semantic-list-item b{color:#466b87}.ai-semantic-list-item.warn{border-left-color:#c58a31;background:#fff9ed}.ai-semantic-list-item.warn b{color:#986318}.ai-semantic-list-item.danger{border-left-color:#a63b35;background:#fff4f2}.ai-semantic-list-item.danger b{color:#913932}.ai-semantic-groups{display:grid;gap:6px}.ai-semantic-group{display:grid;grid-template-columns:minmax(105px,.36fr) minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 8px;border:1px solid rgba(38,116,93,.14);border-radius:8px;background:#f5faf7}.ai-semantic-group b{color:#326d5a;font-size:9px}.ai-semantic-group span{color:#80746d;font-size:8px;line-height:1.5}.ai-semantic-group em{padding:3px 6px;border-radius:99px;background:#fff0d7;color:#94631c;font-size:7px;font-style:normal;font-weight:900;white-space:nowrap}.ai-semantic-group em.ready{background:#e4f3ec;color:#26745d}.ai-semantic-safety{margin:0 12px 12px;padding:8px 10px;border:1px solid rgba(155,58,53,.17);border-radius:9px;background:#fff5f3;color:#81514c;font-size:8px;line-height:1.6}
@media(max-width:700px){.ai-semantic-overview,.ai-semantic-sections{grid-template-columns:1fr 1fr}.ai-semantic-group{grid-template-columns:1fr}.ai-semantic-group em{width:max-content}}

/* 大模型R2与永久知识保险库 */
.ai-test-status.offline i{background:#b34a43;box-shadow:0 0 0 5px rgba(179,74,67,.11)}.ai-test-status.checking i{background:#47789f;box-shadow:0 0 0 5px rgba(71,120,159,.12);animation:aiGatewayPulse 1.35s ease-in-out infinite}.ai-test-status .ai-status-detail{display:block;margin-top:5px;color:#9a8c82;font-size:8px;line-height:1.45}.ai-test-status button{margin-top:8px;padding:4px 8px;border:1px solid rgba(54,95,132,.18);border-radius:7px;background:#fff;color:#426985;font-family:inherit;font-size:8px;font-weight:900;cursor:pointer}
.ai-gateway-bar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;margin:-2px 0 15px;padding:12px 13px;border:1px solid rgba(54,95,132,.19);border-radius:12px;background:linear-gradient(125deg,#f4f9fc,#fffdfa)}.ai-gateway-mark{display:grid;width:37px;height:37px;place-items:center;border-radius:11px;background:linear-gradient(145deg,#365f84,#294b69);color:#fff;font-size:11px;font-weight:900;box-shadow:0 7px 15px rgba(54,95,132,.19)}.ai-gateway-copy{min-width:0}.ai-gateway-copy b{display:flex;align-items:center;gap:7px;color:#40566a;font-size:11px}.ai-gateway-copy b:after{content:"";width:7px;height:7px;border-radius:50%;background:#aaa}.ai-gateway-bar.online .ai-gateway-copy b:after{background:#2c9673;box-shadow:0 0 0 4px rgba(44,150,115,.1)}.ai-gateway-bar.offline .ai-gateway-copy b:after{background:#b34a43}.ai-gateway-bar.checking .ai-gateway-copy b:after{background:#47789f;animation:aiGatewayPulse 1.35s ease-in-out infinite}.ai-gateway-copy span{display:block;margin-top:3px;color:#8e8178;font-size:9px;line-height:1.55}.ai-gateway-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.ai-gateway-actions button{padding:6px 9px;border:1px solid rgba(54,95,132,.17);border-radius:8px;background:#fff;color:#416987;font-family:inherit;font-size:9px;font-weight:900;cursor:pointer}.ai-gateway-actions button.primary{border-color:#365f84;background:#365f84;color:#fff}.ai-gateway-actions button:disabled,.ai-test-actions button:disabled{cursor:not-allowed;opacity:.55;transform:none!important;box-shadow:none!important}
.ai-privacy-strip{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}.ai-privacy-strip span{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:8px;background:#eef7f3;color:#2f735e;font-size:8px;font-weight:800}.ai-privacy-strip span:before{content:"✓";font-weight:900}.ai-privacy-strip span.warn{background:#fff5e4;color:#97651d}.ai-privacy-strip span.warn:before{content:"!"}
.ai-semantic-engine{display:flex;flex-wrap:wrap;gap:5px;padding:0 12px 10px}.ai-semantic-engine span{padding:4px 7px;border-radius:7px;background:#edf3f7;color:#506f87;font-size:8px;font-weight:800}.ai-semantic-engine span.secure{background:#e7f5ee;color:#26745d}.ai-semantic-engine span.fallback{background:#fff0d7;color:#96641c}.ai-test-model-fallback{margin:8px 0;padding:8px 10px;border:1px solid rgba(168,113,31,.22);border-radius:9px;background:#fff8e9;color:#87642c;font-size:9px;line-height:1.6}
.ai-test-run-state.busy{background:#e7f1f7;color:#365f84;animation:aiGatewayPulse 1.35s ease-in-out infinite}.ai-vault-inline{margin-top:8px;padding:8px 10px;border-left:3px solid #26745d;border-radius:8px;background:#f0f8f4;color:#527067;font-size:8px;line-height:1.55}
@keyframes aiGatewayPulse{0%,100%{opacity:.55;transform:scale(.92)}50%{opacity:1;transform:scale(1.12)}}
@media(max-width:700px){.ai-gateway-bar{grid-template-columns:auto 1fr}.ai-gateway-actions{grid-column:1/-1;justify-content:flex-start}.ai-gateway-actions button{flex:1}.ai-privacy-strip{display:grid;grid-template-columns:1fr 1fr}}

/* V8内置知识快照 */
.knowledge-builtin{margin:0 0 16px;padding:18px!important;border-radius:17px!important}.knowledge-builtin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:13px}.knowledge-builtin-head h3{color:#3d3029;font-size:16px}.knowledge-builtin-head p{margin-top:4px;color:#8c7e74;font-size:10px;line-height:1.6}.knowledge-source-version{flex:0 0 auto;padding:6px 10px;border:1px solid rgba(38,116,93,.18);border-radius:99px;background:#edf8f3;color:#26745d;font-size:10px;font-weight:900}.knowledge-builtin-stats{display:grid;grid-template-columns:repeat(6,minmax(90px,1fr));gap:7px}.knowledge-builtin-stat{padding:10px;border:1px solid rgba(54,95,132,.12);border-radius:10px;background:#f8fbfd}.knowledge-builtin-stat b{display:block;color:#365f84;font-size:18px}.knowledge-builtin-stat span{display:block;margin-top:3px;color:#887a71;font-size:9px}.knowledge-builtin-details{margin-top:11px;border:1px solid rgba(205,184,151,.55);border-radius:11px;background:#fffdfa}.knowledge-builtin-details summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;color:#5a4940;font-size:11px;font-weight:900;cursor:pointer;list-style:none}.knowledge-builtin-details summary::-webkit-details-marker{display:none}.knowledge-builtin-details summary:after{content:"展开查看";color:#56738b;font-size:9px}.knowledge-builtin-details[open] summary:after{content:"收起"}.knowledge-builtin-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:0 11px 11px}.knowledge-builtin-group{padding:9px 10px;border:1px solid rgba(54,95,132,.11);border-radius:9px;background:#f9fbfc}.knowledge-builtin-group b{display:block;color:#47677f;font-size:10px}.knowledge-builtin-group span{display:block;margin-top:3px;color:#7f736b;font-size:8px;line-height:1.55}.knowledge-builtin-warning{margin-top:10px;padding:9px 11px;border:1px solid rgba(155,58,53,.18);border-radius:9px;background:#fff5f3;color:#8f4c47;font-size:9px;line-height:1.65}
@media(max-width:1180px){.knowledge-builtin-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.ai-test-calc-strip,.ai-test-source-ledger{grid-template-columns:1fr 1fr}.knowledge-builtin-stats,.knowledge-builtin-groups{grid-template-columns:1fr 1fr}}

/* 智能知识库：规则可配置、人工审核、版本留痕 */
.knowledge-page{--kb-blue:#365f84;--kb-green:#26745d;--kb-amber:#aa7421;--kb-red:#9b3a35;--kb-purple:#77558d}
.knowledge-guardrail{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;margin:0 0 16px}.knowledge-guardrail-item{position:relative;overflow:hidden;padding:14px 15px;border:1px solid rgba(205,184,151,.62);border-radius:14px;background:rgba(255,253,249,.82);box-shadow:0 7px 18px rgba(73,45,30,.055)}.knowledge-guardrail-item:after{content:"";position:absolute;right:-16px;top:-20px;width:62px;height:62px;border-radius:50%;background:rgba(54,95,132,.06)}.knowledge-guardrail-item b{display:flex;align-items:center;gap:7px;color:#49372f;font-size:12px}.knowledge-guardrail-item b:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--kb-green);box-shadow:0 0 0 4px rgba(38,116,93,.10)}.knowledge-guardrail-item span{display:block;margin-top:6px;color:#8a7b71;font-size:10px;line-height:1.6}
.knowledge-layout{display:grid;grid-template-columns:minmax(430px,.9fr) minmax(540px,1.1fr);gap:16px;align-items:start}.knowledge-editor-card{position:sticky;top:103px;padding:19px!important;border-radius:17px!important}.knowledge-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px dashed rgba(184,149,106,.35)}.knowledge-card-title h3{display:flex;align-items:center;gap:9px;color:#3e3029;font-size:16px}.knowledge-card-title h3 span{display:grid;width:29px;height:29px;place-items:center;border-radius:9px;background:linear-gradient(145deg,#7b2621,#5e1916);color:#fff;font-size:12px;box-shadow:0 6px 13px rgba(109,29,26,.2)}.knowledge-card-title p{margin-top:3px;color:#918278;font-size:10px;line-height:1.55}.knowledge-version-pill{padding:5px 9px;border-radius:99px;background:#edf3f7;color:#496d89;font-size:9px;font-weight:900;white-space:nowrap}
.knowledge-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.knowledge-field{min-width:0}.knowledge-field.full{grid-column:1/-1}.knowledge-field label{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px;color:#5b4b43;font-size:11px;font-weight:900}.knowledge-field label small{color:#9b8d84;font-size:9px;font-weight:600}.knowledge-field .form-input,.knowledge-field .form-select,.knowledge-field .form-textarea{font-size:12px}.knowledge-field .form-textarea{min-height:76px;line-height:1.7}.knowledge-field .herb-editor{min-height:108px;background:linear-gradient(145deg,#fffdfa,#f8fbfc)}.knowledge-form-tip{margin-top:8px;padding:9px 10px;border-radius:9px;background:#f7f2e8;color:#846e50;font-size:9px;line-height:1.65}.knowledge-editor-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px;padding-top:13px;border-top:1px dashed rgba(184,149,106,.32)}
.knowledge-natural-box{grid-column:1/-1;padding:13px;border:1px solid rgba(54,95,132,.18);border-radius:13px;background:linear-gradient(145deg,#f7fbfd,#fffdfa)}.knowledge-natural-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.knowledge-natural-head b{display:flex;align-items:center;gap:7px;color:#365f84;font-size:12px}.knowledge-natural-head b:before{content:"原";display:grid;width:24px;height:24px;place-items:center;border-radius:7px;background:#365f84;color:#fff;font-size:9px}.knowledge-natural-head small{color:#8c7e75;font-size:9px}.knowledge-natural-input{min-height:105px!important;background:#fff!important}.knowledge-natural-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px}.knowledge-parse-btn{padding:8px 13px;border:0;border-radius:9px;background:linear-gradient(135deg,#365f84,#294b68);color:#fff;font-family:inherit;font-size:10px;font-weight:900;cursor:pointer;box-shadow:0 6px 14px rgba(54,95,132,.18)}.knowledge-natural-actions span{color:#887b73;font-size:8px;line-height:1.5;text-align:right}.knowledge-parse-preview{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:10px;border:1px solid rgba(38,116,93,.18);border-radius:11px;background:#f1f8f5}.knowledge-parse-preview.hidden{display:none}.knowledge-parse-preview div{min-width:0;padding:7px 8px;border-radius:8px;background:#fff}.knowledge-parse-preview span{display:block;color:#92857d;font-size:8px}.knowledge-parse-preview b{display:block;margin-top:3px;overflow:hidden;color:#296c57;font-size:9px;line-height:1.45;text-overflow:ellipsis}.knowledge-confirm-box{grid-column:1/-1;display:flex;align-items:flex-start;gap:9px;padding:10px 11px;border:1px solid rgba(168,113,31,.18);border-radius:10px;background:#fff9ec;color:#7b653e;font-size:9px;line-height:1.6}.knowledge-confirm-box input{flex:0 0 auto;width:16px;height:16px;margin-top:1px;accent-color:#26745d}.knowledge-confirm-box b{color:#7a5621}.knowledge-field-hint{margin-top:5px;color:#9b8c82;font-size:8px;line-height:1.55}.knowledge-chip.action{background:#e9f1f7;color:#365f84}.knowledge-chip.confirmed{background:#e4f3ec;color:#26745d}.knowledge-chip.unconfirmed{background:#fff0d7;color:#94631c}
.knowledge-ai-inbox{margin:0 0 16px;padding:22px!important;border:1px solid rgba(54,95,132,.20)!important;border-radius:20px!important;background:radial-gradient(circle at 92% 8%,rgba(54,95,132,.10),transparent 26%),linear-gradient(145deg,#fff,#fbfaf7)!important;box-shadow:0 14px 34px rgba(51,55,61,.08)!important}.knowledge-ai-inbox-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.knowledge-ai-inbox-head h3{display:flex;align-items:center;gap:10px;color:#372d29;font-size:18px}.knowledge-ai-mark{display:grid;width:36px;height:36px;place-items:center;border-radius:12px;background:linear-gradient(145deg,#365f84,#294a66);color:#fff;font-size:12px;box-shadow:0 7px 17px rgba(54,95,132,.22)}.knowledge-ai-inbox-head p{margin-top:4px;color:#8c7e75;font-size:10px}.knowledge-ai-state{padding:6px 10px;border-radius:99px;background:#e9f1f7;color:#365f84;font-size:9px;font-weight:900;white-space:nowrap}.knowledge-ai-composer{position:relative;padding:12px;border:1px solid rgba(54,95,132,.22);border-radius:17px;background:#fff;box-shadow:0 8px 22px rgba(54,95,132,.07)}.knowledge-ai-composer textarea{width:100%;min-height:130px;padding:4px 5px 54px;border:0;outline:0;resize:vertical;background:transparent;color:#42362f;font-family:inherit;font-size:14px;line-height:1.8}.knowledge-ai-send{position:absolute;right:12px;bottom:12px;padding:10px 17px;border:0;border-radius:11px;background:linear-gradient(135deg,#7b2621,#5e1916);color:#fff;font-family:inherit;font-size:11px;font-weight:900;cursor:pointer;box-shadow:0 7px 17px rgba(109,29,26,.21)}.knowledge-ai-send:disabled{cursor:wait;opacity:.62}.knowledge-ai-examples{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.knowledge-ai-examples button{padding:6px 9px;border:1px solid rgba(54,95,132,.14);border-radius:9px;background:#f5f8fa;color:#52718a;font-family:inherit;font-size:9px;cursor:pointer}.knowledge-ai-privacy{margin-top:10px;color:#8a7c73;font-size:9px;line-height:1.65}.knowledge-ai-result{margin-top:14px;padding:14px;border:1px solid rgba(38,116,93,.19);border-radius:14px;background:#f7fbf9}.knowledge-ai-result.sensitive{border-color:rgba(155,58,53,.22);background:#fff6f4}.knowledge-ai-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.knowledge-ai-result-head h4{color:#3d332e;font-size:14px}.knowledge-ai-result-head p{margin-top:4px;color:#83776f;font-size:10px;line-height:1.6}.knowledge-ai-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.knowledge-ai-result-grid div{padding:9px 10px;border-radius:9px;background:#fff}.knowledge-ai-result-grid span{display:block;color:#9a8d85;font-size:8px}.knowledge-ai-result-grid b{display:block;margin-top:4px;color:#356c5a;font-size:10px;line-height:1.55}.knowledge-ai-result-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:11px}.knowledge-ai-result-actions button{padding:8px 11px;border:1px solid rgba(54,95,132,.16);border-radius:9px;background:#fff;color:#496d89;font-family:inherit;font-size:9px;font-weight:900;cursor:pointer}.knowledge-ai-result-actions button.primary{border-color:#26745d;background:#26745d;color:#fff}.knowledge-advanced-details{margin:0 0 16px;border:1px solid rgba(215,201,180,.72);border-radius:15px;background:rgba(255,255,255,.62)}.knowledge-advanced-details>summary{padding:13px 16px;color:#75665d;font-size:10px;font-weight:900;cursor:pointer}.knowledge-advanced-details .knowledge-editor-card{position:relative;top:auto;margin:0;border:0;border-top:1px dashed rgba(184,149,106,.30);border-radius:0 0 15px 15px!important;box-shadow:none!important}
.knowledge-board{min-width:0}.knowledge-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:12px;padding:12px;border:1px solid rgba(215,201,180,.72);border-radius:13px;background:rgba(255,255,255,.72)}.knowledge-toolbar .form-input{flex:1;min-width:190px}.knowledge-toolbar .form-select{width:auto;min-width:126px}.knowledge-toolbar-count{margin-left:auto;color:#89796f;font-size:10px;font-weight:800}.knowledge-list{display:grid;gap:10px}.knowledge-rule-card{position:relative;overflow:hidden;padding:15px 16px;border:1px solid rgba(215,201,180,.72);border-left:4px solid #aa9c90;border-radius:14px;background:rgba(255,253,249,.86);box-shadow:0 7px 18px rgba(64,43,32,.05)}.knowledge-rule-card.status-published{border-left-color:var(--kb-green);background:linear-gradient(105deg,rgba(237,248,243,.82),rgba(255,253,249,.92) 45%)}.knowledge-rule-card.status-pending{border-left-color:var(--kb-amber);background:linear-gradient(105deg,rgba(255,248,231,.9),rgba(255,253,249,.92) 45%)}.knowledge-rule-card.status-draft{border-left-color:var(--kb-blue)}.knowledge-rule-card.status-retired{border-left-color:#aaa;opacity:.79}.knowledge-rule-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.knowledge-rule-title{min-width:0}.knowledge-rule-title h4{margin:0;color:#42342d;font-size:14px}.knowledge-rule-title p{margin-top:5px;color:#91837a;font-size:9px}.knowledge-status{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:99px;font-size:9px;font-weight:900;white-space:nowrap}.knowledge-status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.knowledge-status.published{background:#e4f3ec;color:var(--kb-green)}.knowledge-status.pending{background:#fff1d4;color:#9b6618}.knowledge-status.draft{background:#e9f1f7;color:var(--kb-blue)}.knowledge-status.retired{background:#eceae7;color:#81776f}
.knowledge-rule-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.knowledge-chip{display:inline-flex;padding:4px 7px;border-radius:7px;background:#f1ece5;color:#75675e;font-size:9px;font-weight:700}.knowledge-chip.type{background:#f4e8e5;color:#81332f}.knowledge-rule-copy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:11px}.knowledge-rule-copy>div{padding:9px 10px;border:1px solid rgba(215,201,180,.55);border-radius:9px;background:rgba(255,255,255,.63)}.knowledge-rule-copy span{display:block;color:#9c8e84;font-size:8px}.knowledge-rule-copy b{display:block;margin-top:4px;color:#5b4b43;font-size:10px;line-height:1.55}.knowledge-herbs{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.knowledge-herb{padding:4px 7px;border:1px solid rgba(38,116,93,.15);border-radius:7px;background:#f5faf7;color:#326d5a;font-size:9px;font-weight:800}.knowledge-rule-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px;padding-top:10px;border-top:1px dashed rgba(184,149,106,.28)}.knowledge-rule-actions button{padding:6px 9px;border:1px solid rgba(54,95,132,.15);border-radius:8px;background:#fff;color:#496d89;font-family:inherit;font-size:9px;font-weight:800;cursor:pointer}.knowledge-rule-actions button.primary{border-color:var(--kb-green);background:var(--kb-green);color:#fff}.knowledge-rule-actions button.warn{border-color:#d3a34e;background:#fff7e7;color:#95631b}.knowledge-rule-actions button.danger{border-color:rgba(155,58,53,.18);background:#fff4f2;color:var(--kb-red)}.knowledge-empty{padding:34px 20px;border:1px dashed rgba(54,95,132,.22);border-radius:14px;background:rgba(248,251,252,.72);text-align:center}.knowledge-empty b{display:block;color:#5e5149;font-size:13px}.knowledge-empty p{margin-top:5px;color:#9b8e85;font-size:10px;line-height:1.65}
.knowledge-lower{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:16px;margin-top:16px}.knowledge-samples,.knowledge-audit{padding:18px!important;border-radius:17px!important}.knowledge-sample-list,.knowledge-audit-list{display:grid;gap:8px}.knowledge-sample{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:10px 11px;border:1px solid rgba(215,201,180,.6);border-radius:10px;background:#fffdfa}.knowledge-sample b,.knowledge-audit-item b{display:block;color:#53443c;font-size:10px}.knowledge-sample small,.knowledge-audit-item small{display:block;margin-top:3px;color:#988b82;font-size:8px;line-height:1.5}.knowledge-sample button{padding:5px 8px;border:1px solid rgba(38,116,93,.18);border-radius:7px;background:#f2f8f5;color:var(--kb-green);font-family:inherit;font-size:9px;font-weight:800;cursor:pointer}.knowledge-audit-item{padding:9px 10px;border-left:3px solid rgba(119,85,141,.55);border-radius:8px;background:#faf8fb}.knowledge-safety-note{margin-top:16px;padding:13px 15px;border:1px solid rgba(155,58,53,.17);border-radius:12px;background:linear-gradient(90deg,rgba(155,58,53,.06),rgba(255,255,255,.65));color:#77625c;font-size:10px;line-height:1.75}.knowledge-safety-note b{color:#84342f}
.knowledge-herb-library{margin:16px 0;padding:18px!important;border-radius:17px!important}.knowledge-herb-library-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.knowledge-herb-library-head h3{color:#3e3029;font-size:15px}.knowledge-herb-library-head p{margin-top:4px;color:#918278;font-size:9px;line-height:1.55}.knowledge-herb-library-actions{display:flex;align-items:center;gap:8px}.knowledge-herb-library-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:9px}.knowledge-herb-card{padding:12px 13px;border:1px solid rgba(215,201,180,.68);border-left:4px solid var(--kb-amber);border-radius:12px;background:#fffdfa}.knowledge-herb-card.published{border-left-color:var(--kb-green);background:#f5faf7}.knowledge-herb-card.draft{border-left-color:var(--kb-blue)}.knowledge-herb-card.retired{border-left-color:#aaa;opacity:.72}.knowledge-herb-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.knowledge-herb-card-head b{color:#4b3931;font-size:12px}.knowledge-herb-card-head small{display:block;margin-top:3px;color:#9b8e85;font-size:8px}.knowledge-herb-card-copy{margin-top:8px;color:#776a62;font-size:9px;line-height:1.65}.knowledge-herb-card-copy strong{color:#8a2520}.knowledge-herb-card-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.knowledge-herb-card-actions button{padding:5px 8px;border:1px solid rgba(54,95,132,.16);border-radius:7px;background:#fff;color:#496d89;font-family:inherit;font-size:8px;font-weight:800;cursor:pointer}.knowledge-herb-card-actions button.primary{border-color:var(--kb-green);background:var(--kb-green);color:#fff}.knowledge-herb-card-actions button.danger{border-color:rgba(155,58,53,.18);background:#fff4f2;color:var(--kb-red)}
.knowledge-herb-modal{position:fixed;z-index:240;inset:0;display:grid;place-items:center;padding:22px;background:rgba(47,29,24,.48);backdrop-filter:blur(7px)}.knowledge-herb-modal.hidden{display:none}.knowledge-herb-modal-card{width:min(640px,100%);max-height:92vh;overflow:auto;border:1px solid rgba(193,157,106,.48);border-radius:20px;background:linear-gradient(145deg,#fffdfa,#faf6ef);box-shadow:0 24px 70px rgba(45,26,20,.28)}.knowledge-herb-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:19px 21px 15px;border-bottom:1px solid rgba(205,184,151,.48)}.knowledge-herb-modal-head h3{color:#4a342d;font-size:18px}.knowledge-herb-modal-head p{margin-top:4px;color:#8c7e75;font-size:10px;line-height:1.55}.knowledge-herb-modal-close{display:grid;width:31px;height:31px;place-items:center;border:0;border-radius:50%;background:#f1e9de;color:#745b4d;font-size:18px;cursor:pointer}.knowledge-herb-modal-body{display:grid;grid-template-columns:1fr 1fr;gap:11px;padding:18px 21px}.knowledge-herb-modal-body .full{grid-column:1/-1}.knowledge-herb-modal-body label{display:block;margin-bottom:6px;color:#5b4b43;font-size:10px;font-weight:900}.knowledge-herb-modal-body .form-input,.knowledge-herb-modal-body .form-select,.knowledge-herb-modal-body .form-textarea{font-size:12px}.knowledge-herb-modal-body .form-textarea{min-height:72px}.knowledge-herb-modal-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 21px 19px;border-top:1px dashed rgba(184,149,106,.35)}.knowledge-herb-modal-foot span{max-width:360px;color:#8a7d74;font-size:9px;line-height:1.55}.knowledge-herb-modal-foot div{display:flex;gap:8px}
@media(max-width:1180px){.knowledge-guardrail{grid-template-columns:1fr 1fr}.knowledge-layout,.knowledge-lower{grid-template-columns:1fr}.knowledge-editor-card{position:relative;top:auto}.knowledge-rule-copy{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.knowledge-guardrail,.knowledge-form-grid,.knowledge-rule-copy,.knowledge-herb-modal-body,.knowledge-ai-result-grid{grid-template-columns:1fr}.knowledge-toolbar>*{width:100%!important}.knowledge-toolbar-count{margin-left:0}.knowledge-herb-library-head,.knowledge-herb-modal-foot{align-items:stretch;flex-direction:column}.knowledge-herb-modal-body .full{grid-column:auto}.knowledge-ai-inbox{padding:15px!important}.knowledge-ai-inbox-head{align-items:stretch;flex-direction:column}.knowledge-ai-composer textarea{min-height:165px}}

@media(max-width:1280px){
  #main-system .brand{min-width:275px;padding-right:15px}.workspace-hero{grid-template-columns:1fr}.workspace-hero-stats{max-width:720px}
}
@media(max-width:1000px){
  #main-system .header{gap:12px}#main-system .brand{min-width:0}#main-system .brand:after{display:none}#main-system .user-info{background:transparent;border:0;padding:0;box-shadow:none}
  #main-system .layout:before{width:222px}#main-system .sidebar{width:222px}.workspace-hero{padding:23px}.workspace-hero-stats{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:768px){
  #main-system .header{position:relative;min-height:0;padding:13px 15px}#main-system .header-logo{width:49px;height:49px;animation:none}#main-system .brand{padding-right:0}
  #main-system .layout:before{top:0;width:72px;animation:none}#main-system .sidebar{top:0;width:72px;height:100vh;padding:15px 8px;animation:none}#main-system .sidebar:after{display:none}#main-system .nav-item{padding:11px 8px}#main-system .nav-icon{flex-basis:30px;width:30px;height:30px}
  #main-system .main{padding:20px 14px 38px}#main-system .main:before{font-size:115px}.workspace-hero{padding:20px 17px;border-radius:17px}.workspace-hero-title{font-size:25px}.workspace-hero-stats{grid-template-columns:repeat(3,minmax(82px,1fr));gap:7px}.workspace-hero-stat{min-height:102px;padding:14px 10px}.workspace-hero-stat b{font-size:24px}
}
@media(max-width:520px){.workspace-hero-stats{grid-template-columns:1fr}.workspace-hero-stat{min-height:86px}.workspace-hero-actions{display:grid;grid-template-columns:1fr 1fr}.workspace-hero-btn{width:100%}}
@media(prefers-reduced-motion:reduce){
  #main-system:before,#main-system:after,#main-system .header:after,#main-system .header-logo,#main-system .sidebar,#main-system .sidebar:before,#main-system .main.page-enter,.workspace-hero:before,.workspace-hero:after,#main-system .partner-rx-hero:before{animation:none!important}
}
@media print{#main-system:before,#main-system:after,#main-system .layout:before,#main-system .main:before,#main-system .sidebar:before,#main-system .sidebar:after,.workspace-hero:before,.workspace-hero:after{display:none!important}}

.clinical-ai-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border-bottom:1px solid #d6e8e0;background:#f2faf6;color:#176851;font-size:14px;line-height:1.8}.clinical-ai-summary[hidden]{display:none}.clinical-ai-summary>div{flex:1}.clinical-ai-summary .btn{flex-shrink:0}.clinical-ai-summary.is-error{background:#fff3ef;color:#9a3028;border-color:#efc4bb}.clinical-ai-summary.is-warning{background:#fff9eb;color:#916012;border-color:#ead8b0}.clinical-ai-summary .medical-ocr-spinner{width:14px;height:14px;margin-right:8px;vertical-align:middle}.is-ai-incomplete{outline:2px solid #cc6b4e!important;outline-offset:2px;background:#fff7f3!important}.medical-ocr-field.is-missing{background:#fff7ed;border-color:#edc39b}.medical-ocr-field.is-missing span{color:#9a5923}@media(max-width:600px){.clinical-ai-summary{align-items:flex-start;flex-direction:column}}

.medical-ocr-edit-note{margin-bottom:12px;color:#79695e;font-size:13px;line-height:1.8}.medical-ocr-field label{display:block;margin-bottom:6px;color:#786860;font-size:12px;font-weight:600;cursor:text}.medical-ocr-editor{display:block;box-sizing:border-box;width:100%;min-width:0;border:1px solid transparent;border-radius:5px;background:transparent;padding:6px;color:#372e29;font:inherit;font-size:14px;line-height:1.65}.medical-ocr-editor:hover{border-color:#d6c0ad;background:#fffdf9}.medical-ocr-editor:focus{outline:2px solid #b79257;outline-offset:1px;border-color:transparent;background:#fff}.medical-ocr-editor::placeholder{color:#aa805d}.medical-ocr-field textarea{min-height:72px;resize:vertical}.medical-ocr-raw textarea{min-height:150px;border-color:#e1d7ca;background:#fff}.medical-ocr-edit-feedback{margin-top:12px;padding:10px 12px;color:#946022;background:#fff8e9;border-radius:7px;font-size:13px}.medical-ocr-edit-feedback[hidden]{display:none}

.photo-viewer.is-reference{padding:0;background:transparent;backdrop-filter:none;pointer-events:none;align-items:flex-start;justify-content:flex-end}.photo-viewer.is-reference .photo-viewer-shell{position:fixed;top:94px;right:22px;width:min(560px,39vw);height:calc(100dvh - 118px);max-height:900px;border:1px solid #cbb89d;background:#fffdf8;box-shadow:0 12px 40px rgba(63,35,26,.25);pointer-events:none}.photo-viewer.is-reference .photo-viewer-head{gap:6px;padding:8px 10px;background:#fffaf1;color:#663c2b;pointer-events:auto}.photo-viewer.is-reference .photo-viewer-head-main{flex-shrink:0}.photo-viewer.is-reference .photo-viewer-head b{font-size:13px}.photo-viewer.is-reference .photo-viewer-head span{color:#8c7969}.photo-viewer.is-reference .photo-viewer-tools{gap:4px;flex-wrap:wrap}.photo-viewer.is-reference .photo-viewer-tool{min-width:28px;height:30px;padding:0 7px;background:#fff;border-color:#d9c7af;color:#6d312b;font-size:11px}.photo-viewer.is-reference .photo-viewer-tool[hidden]{display:none}.photo-viewer.is-reference .photo-viewer-zoom{min-width:37px;color:#6d312b!important;font-size:11px}.photo-viewer.is-reference .photo-viewer-close{width:30px;height:30px;border-color:#d9c7af;background:#fff;color:#6d312b;font-size:20px;line-height:26px}.photo-viewer.is-reference .photo-viewer-stage{padding:10px;background:transparent;pointer-events:none}.photo-viewer.is-reference .photo-viewer-image{max-width:calc(100% - 20px);max-height:calc(100% - 20px);pointer-events:auto;box-shadow:0 4px 16px rgba(63,35,26,.2)}.photo-viewer.is-reference .photo-viewer-nav{pointer-events:auto;width:30px;height:42px;font-size:23px;background:rgba(83,42,29,.65)}.photo-viewer.is-reference .photo-viewer-prev{left:4px}.photo-viewer.is-reference .photo-viewer-next{right:4px}.photo-viewer.is-reference .photo-viewer-foot{background:#fffaf1;color:#876e58;padding:7px 8px;font-size:11px;text-align:center}.photo-reference-open #medical-ocr-result{margin-right:min(588px,calc(39vw + 28px))}.photo-reference-open #medical-ocr-result .medical-ocr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-reference-open #medical-ocr-result .medical-ocr-field.wide{grid-column:span 2}@media(max-width:1000px){.photo-viewer.is-reference .photo-viewer-head{align-items:flex-start;flex-direction:column}.photo-viewer.is-reference .photo-viewer-tools{justify-content:flex-start}}@media(max-width:760px){.photo-viewer.is-reference .photo-viewer-shell{top:auto;right:8px;bottom:12px;width:44vw;height:48dvh;border-radius:10px}.photo-reference-open #medical-ocr-result{margin-right:0}.photo-reference-open #medical-ocr-result .medical-ocr-grid{grid-template-columns:1fr}.photo-reference-open #medical-ocr-result .medical-ocr-field.wide{grid-column:span 1}.photo-viewer.is-reference .photo-viewer-foot{display:none}}

.core-panel{padding:20px;margin:16px 0;border:1px solid #d8e4dc;border-radius:14px;background:#f8fbf8}.core-panel h3{margin:0 0 10px;color:#235d46}.core-panel p{line-height:1.7;color:#746657}.core-pipeline{display:flex;gap:8px;flex-wrap:wrap}.core-step{padding:8px 12px;border:1px solid #dfded1;border-radius:8px;background:white;font-size:12px}.core-step b{display:block;margin-bottom:4px}.core-warning{padding:10px;margin:8px 0;background:#fff4dc;border-left:3px solid #b78429;line-height:1.65}.core-warning.block{background:#ffeae6;border-color:#a33c2b}.core-table{width:100%;border-collapse:collapse}.core-table th,.core-table td{padding:10px;border-bottom:1px solid #e6ddd2;text-align:left;vertical-align:top;line-height:1.65}.experience-grid{display:grid;gap:12px}.experience-card{padding:16px;background:white;border:1px solid #e3dccf;border-radius:10px}.experience-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.experience-content{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;background:#faf7f0;padding:12px;border-radius:8px;font-size:13px}.experience-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.experience-status{font-size:12px;color:#675443}.core-inline-input{max-width:140px}.core-scroll{overflow-x:auto}.core-tag{display:inline-block;padding:3px 7px;margin:4px;border-radius:6px;background:#eaf3ed;color:#28674c;font-size:12px}

/* Render each zoom from original image pixels; translate only for panning. */
.photo-viewer-image,.photo-viewer.is-reference .photo-viewer-image{max-width:none;max-height:none;flex-shrink:0;will-change:auto}
.photo-viewer-resolution{font-variant-numeric:tabular-nums;font-size:11px;opacity:.8}
.photo-viewer.is-reference .photo-viewer-head{flex-wrap:wrap;align-items:flex-start}
.photo-viewer.is-reference .photo-viewer-head-main{flex:1 0 100%;flex-wrap:wrap}
.photo-viewer.is-reference .photo-viewer-tools{flex:1 0 100%;justify-content:flex-end}
@media(max-width:760px){.photo-viewer-head{flex-wrap:wrap}.photo-viewer-head-main{flex-wrap:wrap}.photo-viewer-tools{flex-wrap:wrap}.photo-viewer-tool-reset{display:inline-flex}.photo-viewer.is-reference .photo-viewer-tools{justify-content:flex-start}.photo-viewer-resolution{font-size:10px}}

.hc-auth{max-width:440px;margin:20px auto;padding:28px;background:#fff9ef;border-radius:20px;color:#45342c;text-align:left}
.hc-auth h2{font-size:24px;color:#772b33;margin-bottom:20px}.hc-auth label{display:block;margin:12px 0 5px}
.hc-auth input,.hc-auth select{width:100%;padding:12px;border:1px solid #dbc6b0;border-radius:8px;font:inherit}
.hc-auth button{margin-top:16px;width:100%;padding:12px;font:inherit;background:#772b33;color:white;border:0;border-radius:8px;cursor:pointer}
.hc-auth small{display:block;margin-top:16px;color:#776253}.hc-auth-error{color:#ad2828;min-height:24px;margin-top:12px}
.hc-switch{display:flex;gap:8px;flex-wrap:wrap;margin:0 8px}.hc-switch a{color:#f9ead8;border:1px solid #bf9979;padding:5px 9px;border-radius:6px;font-size:14px;text-decoration:none}
.hc-save-error{background:#fff4f2;color:#ad2828;border:1px solid #e1b8b0;padding:12px 18px;position:fixed;bottom:20px;right:20px;z-index:99999;border-radius:10px;max-width:430px}
.hc-save-error button{margin-left:12px;padding:5px 12px}.hc-portal{min-height:100vh;background:#5d242d;color:#fbf0df;font-family:'Microsoft YaHei','微软雅黑',sans-serif;display:grid;place-items:center;padding:30px;box-sizing:border-box}
.hc-portal section{width:min(1050px,100%);text-align:center}.hc-portal h1{font-size:36px;font-weight:600}.hc-portal p{color:#dfc1a5;font-size:18px}.hc-portal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:35px 0}
.hc-portal-card{background:#fffcf5;color:#592b2d;padding:34px 18px;border-radius:20px;text-decoration:none;transition:transform .2s}.hc-portal-card:hover{transform:translateY(-5px)}
.hc-portal-card b{font-size:25px}.hc-portal-card span{display:block;line-height:1.8;font-size:16px;margin-top:16px;color:#866f60}.hc-test-link{color:#f8dab0}
@media(max-width:850px){.hc-portal-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.hc-portal-grid{grid-template-columns:1fr}.hc-portal h1{font-size:26px}}
/* Photo picker: keep the native file control, with the shared wine/gold palette. */
#rx-photo.form-input{min-height:62px;padding:8px;border:1px solid #dcc5a3;border-radius:14px;background:linear-gradient(110deg,#fffdf8,#f7eddf);color:#8a7361;font-family:inherit;font-size:14px;cursor:pointer;transition:border-color .18s,box-shadow .18s}
#rx-photo.form-input::file-selector-button{min-height:44px;margin-right:16px;padding:10px 24px;border:1px solid #9b6756;border-radius:10px;background:linear-gradient(135deg,#8b3b44,#642630);color:#fff7e9;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 3px 9px #6a2b3320;transition:background .18s,box-shadow .18s}
#rx-photo.form-input:hover{border-color:#bd9662;box-shadow:0 3px 12px #7650380a}
#rx-photo.form-input:hover::file-selector-button{background:linear-gradient(135deg,#9a4650,#762c38);box-shadow:0 4px 12px #6a2b3330}
#rx-photo.form-input:focus-visible{outline:2px solid #b38b4f;outline-offset:3px}
@media(max-width:600px){#rx-photo.form-input{font-size:13px}#rx-photo.form-input::file-selector-button{padding:10px 16px;margin-right:10px}}
@media(prefers-reduced-motion:reduce){#rx-photo.form-input,#rx-photo.form-input::file-selector-button{transition:none}}

/* One expanding pharmacy review surface, without nested scroll regions. */
#detail-modal.prepare-rx-overlay{align-items:flex-start;overflow-y:auto;overflow-x:hidden;padding:24px 0;box-sizing:border-box;scrollbar-width:none}
#detail-modal.prepare-rx-overlay::-webkit-scrollbar{display:none}
#detail-modal.prepare-rx-overlay .prepare-rx-modal{width:min(1400px,96vw);max-width:1400px;max-height:none;overflow:visible;flex-shrink:0;box-sizing:border-box;padding-bottom:0;margin:auto}
.prepare-rx-modal>.prepare-rx-body{max-height:none;overflow:visible;padding:4px 28px 22px}
.prepare-rx-meta{font-size:18px;gap:10px 32px;margin-bottom:14px}
.prepare-rx-panel{min-height:0;padding:58px 30px 24px}
.prepare-rx-content{line-height:1.9}
.prepare-rx-packing{margin-top:14px;border:1px solid #d9c4a9;border-radius:10px;padding:14px 16px;background:#fbf5eb}
.prepare-rx-packing-summary{margin:0;color:#643d2e;font-size:19px;line-height:1.8;font-weight:600}
.prepare-rx-packing.hc-v10-packing{padding:14px 16px;margin-top:14px}
.prepare-rx-packing label{display:block;margin-top:10px;font-size:15px}
.prepare-rx-packing #hc-v10-unpacked:empty{display:none}
@media(max-width:768px){#detail-modal.prepare-rx-overlay{padding:12px 0}.prepare-rx-modal>.prepare-rx-body{padding:2px 15px 18px}.prepare-rx-meta{font-size:17px;gap:7px 20px}.prepare-rx-panel{padding:56px 20px 22px}.prepare-rx-packing-summary{font-size:18px}}

#ground-assigned-card>summary{cursor:pointer}#ground-assigned-list .ground-assign-control .btn{flex:0 0 auto;white-space:nowrap;min-width:76px}

/* Prescription printing: complete content scaled onto one A4 page, isolated from modal chrome. */
#print-modal.rx-print-preview-open{padding:16px;box-sizing:border-box;overflow:hidden}
#print-modal .print-modal.rx-print-dialog{box-sizing:border-box;display:flex;flex-direction:column;width:min(860px,calc(100vw - 32px));height:calc(100dvh - 32px);max-width:860px;max-height:calc(100dvh - 32px);padding:0;overflow:hidden}
.rx-print-dialog>.print-modal-header{position:static;flex:0 0 auto;margin:0;padding:12px 18px;font-size:18px}
.rx-print-dialog>.print-actions{flex:0 0 auto;margin:0;padding:10px 18px;border-top:1px solid var(--line)}
.rx-print-preview{flex:1;min-height:0;overflow:hidden;display:grid;place-items:center;padding:8px;box-sizing:border-box;background:#eeeae3}
.rx-print-preview-size{position:relative;flex:none;overflow:hidden}
.rx-print-page,#hc-rx-print-sheet{position:relative;width:190mm;height:276mm;box-sizing:border-box;background:#fff;overflow:hidden}
.rx-print-page{transform-origin:top left}
.rx-paper.hc-rx-print-paper{position:absolute;top:0;left:0;display:flex;flex-direction:column;width:190mm;max-width:none;height:auto;max-height:none;box-sizing:border-box;margin:0;overflow:visible;transform-origin:top left;border-radius:0;box-shadow:none;background:#fff;color:#211a16;overflow-wrap:anywhere}
.hc-rx-print-paper>*{flex-shrink:0}
.hc-rx-print-paper .a5-view-row b{background:#fff;border-right:1px solid #eee2da}
#hc-rx-print-sheet{position:fixed;left:-10000px;top:0;visibility:hidden;pointer-events:none}
@media print{
 @page{size:A4 portrait;margin:10mm}
 body.hc-rx-print-ready{margin:0!important;padding:0!important;background:#fff!important;overflow:visible!important}
 body.hc-rx-print-ready>*{display:none!important}
 body.hc-rx-print-ready>#hc-rx-print-sheet{display:block!important;position:relative!important;left:auto!important;top:auto!important;margin:0!important;padding:0!important;visibility:visible!important;box-shadow:none!important;break-inside:avoid;page-break-inside:avoid}
 #hc-rx-print-sheet .rx-paper{visibility:visible!important}
}

/* R4.4.119 Clinical entry: compact information rows and growing paragraph fields. */
.partner-rx-hero[hidden]{display:none!important}
.a5-clinical-paper .a5-patient-meta{grid-template-columns:2fr 1fr 1fr}
.a5-clinical-paper .a5-patient-identity{grid-template-columns:2fr 1fr 1fr 2fr 2fr}
.a5-clinical-paper .a5-manual-patient-identity{grid-template-columns:repeat(4,minmax(0,1fr))}
.a5-clinical-paper .a5-patient-vitals{grid-template-columns:1fr 1fr 2fr}
.a5-clinical-paper .a5-allergy-field>select,.a5-clinical-paper .a5-allergy-field>.hc-select-wrap{flex:0 0 80px;width:80px}
.a5-clinical-paper .a5-allergy-field>input{width:0;flex:1 1 0}
.a5-clinical-paper textarea.a5-textarea{box-sizing:border-box;min-height:0;height:auto;max-height:none;resize:none;overflow:hidden;line-height:1.6}
.a5-clinical-paper .a5-check input{appearance:none;-webkit-appearance:none;display:inline-grid;place-content:center;flex:0 0 18px;width:18px;height:18px;margin:0;border:1px solid #8e8e8e;border-radius:2px;background:#fff;vertical-align:middle;cursor:pointer}
.a5-clinical-paper .a5-check input:before{content:"";width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-1px) rotate(-45deg) scale(0)}
.a5-clinical-paper .a5-check input:checked{background:#731f1c;border-color:#731f1c}
.a5-clinical-paper .a5-check input:checked:before{transform:translateY(-1px) rotate(-45deg) scale(1)}
.a5-clinical-paper .a5-check input:focus-visible{outline:2px solid #b58b42;outline-offset:3px}
@media(max-width:1100px){
 .a5-clinical-paper .a5-patient-meta{grid-template-columns:1fr 1fr}
 .a5-clinical-paper .a5-patient-meta>.a5-field:first-child{grid-column:1/-1}
 .a5-clinical-paper .a5-patient-identity{grid-template-columns:repeat(3,minmax(0,1fr))}
 .a5-clinical-paper .a5-manual-patient-identity{grid-template-columns:repeat(2,minmax(0,1fr))}
 .a5-clinical-paper .a5-patient-vitals{grid-template-columns:repeat(2,minmax(0,1fr))}
 .a5-clinical-paper .a5-allergy-field{grid-column:1/-1}
}
@media(max-width:600px){
 .a5-clinical-paper .a5-patient-identity{grid-template-columns:repeat(2,minmax(0,1fr))}
 .a5-clinical-paper .a5-patient-identity:not(.a5-manual-patient-identity)>.a5-field:last-child{grid-column:1/-1}
 .a5-clinical-paper .a5-patient-meta,.a5-clinical-paper .a5-patient-vitals{grid-template-columns:minmax(0,1fr)}
}

/* R4.4.120: standalone local record generation, alongside the existing AI flow. */
.a5-clinical-paper .a5-section-title:has(.clinical-local-rx-btn){gap:12px;padding-right:16px}
.a5-clinical-paper .a5-section-title:has(.clinical-local-rx-btn):after{display:none}
.a5-clinical-paper .clinical-local-rx-btn{margin-left:auto;min-height:36px;padding:7px 18px;border:1px solid var(--record-wine,#681c19);background:var(--record-wine,#681c19);color:#fff;font-size:15px;font-weight:700;white-space:nowrap}
.a5-clinical-paper .clinical-local-rx-btn:hover:not(:disabled){background:var(--record-wine-deep,#43110f);border-color:var(--record-wine-deep,#43110f)}
.a5-clinical-paper .clinical-local-rx-btn:disabled{opacity:.6;cursor:wait}
.clinical-local-rx-status{margin:9px 0;color:#28634f;font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.clinical-local-rx-status.is-error{color:#a3372c}.clinical-local-rx-status[hidden]{display:none}

/* R4.4.121: move entry return navigation to the bottom of the store sidebar. */
#main-system .sidebar:has(#clinical-sidebar-return){display:flex;flex-direction:column}
#main-system .sidebar:has(#clinical-sidebar-return):after{display:none}
#main-system .clinical-sidebar-return{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;width:100%;min-height:42px;margin-top:auto;padding:10px 8px;border:1px solid #e1c7a5;border-radius:9px;background:#fffaf1;color:#6b261e;font-size:14px;font-weight:700;line-height:1.5;cursor:pointer}
#main-system #clinical-sidebar-new-case + #clinical-sidebar-return{margin-top:8px}
#main-system .clinical-sidebar-return:hover{background:#f7e9d5;border-color:#c49965}
#partner-clinical-entry .clinical-entry-toolbar:not(:has(button:not([hidden]))){display:none}
@media(max-width:768px){#main-system .clinical-sidebar-return{flex-direction:column;gap:2px;padding:8px 3px;font-size:12px;white-space:normal}}

/* R4.4.122: omit passive patient-link help while preserving actionable matches. */
.a5-clinical-paper #patient-link-panel:not(:has(button)){display:none!important}

/* R4.4.135: saved prescription blocks grow and shrink with their text. */
.rx-paper-rx.rx-paper-saved-rx{min-height:0}
.rx-paper-saved-rx .rx-paper-rx-content{overflow-wrap:anywhere}

/* Saved prescription: usage and dose share a row; instructions use the full width. */
.rx-paper-dosage.rx-paper-dosage-saved{display:flex;flex-wrap:wrap;gap:10px 16px;padding:12px;margin:12px 0;border-color:#b8aaa0}
.rx-paper-dosage-saved .rx-paper-item{min-width:0;align-items:flex-start;border:0;padding:0;line-height:1.65}
.rx-paper-dosage-saved .rx-paper-item span{min-width:0;white-space:pre-wrap;overflow-wrap:anywhere}
.rx-paper-order{grid-column:1/-1;min-width:0;border-top:1px solid #ded5cd;padding-top:9px;font-size:13px;line-height:1.65;color:var(--ink)}
.rx-paper-order>label{display:block;margin-bottom:4px;font-weight:700}
.rx-paper-order-text{white-space:pre-wrap;overflow-wrap:anywhere}
.rx-paper-order:only-child{border-top:0;padding-top:0}
/* Fixed A4 geometry is shared by preview and print before content fitting. */
.rx-paper.hc-rx-print-paper{padding:5mm!important;font-size:10pt;line-height:1.45}
.hc-rx-print-paper .rx-paper-header{padding-bottom:2mm!important;margin-bottom:3mm!important}
.hc-rx-print-paper .rx-paper-header h2{font-size:19pt!important;letter-spacing:3px}
.hc-rx-print-paper .rx-paper-header .sub{font-size:9pt!important}
.hc-rx-print-paper .rx-paper-number{margin-top:1.5mm;font-size:9pt}
.hc-rx-print-paper .rx-paper-grid{gap:2mm 3mm!important;margin-bottom:3mm!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
.hc-rx-print-paper .a5-view{margin-top:0;border-radius:0;margin-bottom:3mm}
.hc-rx-print-paper .a5-view-row{grid-template-columns:30mm minmax(0,1fr)}
.hc-rx-print-paper .a5-view-row b,.hc-rx-print-paper .a5-view-row span{padding:1.5mm 2mm;font-size:10pt;line-height:1.45}
.hc-rx-print-paper .rx-paper-saved-rx{flex-grow:1;padding:2.5mm;margin-bottom:3mm!important;border-width:1px}
.hc-rx-print-paper .rx-paper-saved-rx:before{top:1.5mm;left:2.5mm;font-size:17pt}
.hc-rx-print-paper .rx-paper-rx-content{margin-top:7mm;font-size:10pt;line-height:1.6}
.hc-rx-print-paper .rx-paper-dosage-saved{padding:2mm;gap:2mm 3mm;margin:0 0 3mm}
.hc-rx-print-paper .rx-paper-dosage-saved label,.hc-rx-print-paper .rx-paper-dosage-saved span,.hc-rx-print-paper .rx-paper-order{font-size:10pt;line-height:1.45}
.hc-rx-print-paper .rx-paper-order{padding-top:1.5mm}
.hc-rx-print-paper .rx-paper-signature{grid-template-columns:repeat(3,minmax(0,1fr));gap:4mm;margin-top:4mm!important}
.hc-rx-print-paper .rx-paper-date{margin-top:3mm!important}
/* Wrapping flex rows also keep the full-width instruction block stable in print engines. */
.rx-paper-dosage-saved>.rx-paper-item{flex:1 1 45%}
.rx-paper-dosage-saved>.rx-paper-order{flex:0 0 100%;width:100%;box-sizing:border-box}
.hc-rx-print-paper .rx-paper-sig-item{border-bottom:1px solid #777!important;padding-bottom:1.5mm!important}
@media(max-width:520px){.rx-paper-dosage-saved>.rx-paper-item{flex-basis:100%}.hc-rx-print-paper .rx-paper-dosage-saved>.rx-paper-item{flex-basis:45%}}
/* Manual entry stores the complete order but shows only one compact line. */
.a5-clinical-paper textarea.manual-order-preview{box-sizing:border-box;display:block;width:0;min-width:0;flex:1 1 0;height:40px!important;min-height:40px!important;max-height:40px!important;padding:8px 10px;line-height:22px;white-space:pre;overflow:hidden;resize:none;text-overflow:ellipsis;cursor:pointer;font-family:"Microsoft YaHei",sans-serif;font-size:14px;line-height:22px!important;border:1px solid #dfcec4;border-radius:7px;background:#fff;color:var(--ink)}
.manual-order-dialog{box-sizing:border-box;width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:22px;border:1px solid #d5b988;border-radius:14px;background:#fffdf8;color:#54423b;box-shadow:0 18px 65px #27120b44}
.manual-order-dialog::backdrop{background:#281a1466}.manual-order-dialog h3{margin:0 0 12px;color:#7b211e;font-size:20px}.manual-order-dialog label{display:block;margin-bottom:8px;font-size:13px}
.manual-order-dialog textarea{box-sizing:border-box;width:100%;min-height:180px;max-height:55dvh;resize:vertical;padding:12px;border:1px solid #d6c2ad;border-radius:7px;background:white;font:inherit;font-size:15px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}
.manual-order-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.manual-order-actions button{padding:9px 16px;border:1px solid #b99d7d;border-radius:7px;background:#fffaf2;color:#633a27;cursor:pointer;font:inherit}.manual-order-actions button[data-order-action=save]{background:#7b211e;color:#fff;border-color:#7b211e}
