:root{--ink:#402f32;--muted:#75676a;--paper:#fffaf7;--cream:#f8efe9;--line:#eadbd7;--green:#b64843;--green-deep:#8f302f;--green-pale:#f8e8e4;--orange:#bd7438;--bg-base:#f5eeeb;--bg-start:#f5e9e5;--bg-mid:#fbf5ef;--bg-end:#eee2df;--ambient-one:#b6484321;--ambient-two:#bd74381c;--card:#fffaf7f7;--shadow-rgb:91, 45, 45;--heading:#4a2d31;--primary-start:#c25149;--primary-end:#953331;--focus-border:#ead7d2;--focus-bg:#fcf3f0;--soft-border:#ebdbd6;--soft-bg:#fcf5f2}*{box-sizing:border-box}html{background:var(--bg-base);scroll-behavior:smooth}body{color:var(--ink);background:radial-gradient(circle at 12% 6%, #fffffff5 0 12%, transparent 35%), linear-gradient(155deg, var(--bg-start) 0%, var(--bg-mid) 52%, var(--bg-end) 100%);-webkit-font-smoothing:antialiased;margin:0;font-family:PingFang SC,Microsoft YaHei,Noto Sans CJK SC,system-ui,sans-serif}a{color:inherit}button{font:inherit}.page-shell{isolation:isolate;width:100%;min-height:100svh;padding:30px 18px 24px;position:relative;overflow:hidden}.content-stack{width:min(100%,540px);margin:0 auto}.ambient{z-index:-1;filter:blur(2px);pointer-events:none;border-radius:999px;position:fixed}.ambient-one{background:var(--ambient-one);width:240px;height:240px;top:-110px;right:-80px}.ambient-two{background:var(--ambient-two);width:180px;height:180px;bottom:40px;left:-100px}.doctor-card,.profile-card,.contact-card{background:var(--card);width:100%;box-shadow:0 22px 70px rgba(var(--shadow-rgb), .12), 0 2px 8px rgba(var(--shadow-rgb), .05);border:1px solid #ffffffe6;border-radius:28px}.doctor-card{padding:24px}.hospital-header{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding-bottom:19px;display:flex}.hospital-logo{background:#fff;border-radius:12px;flex:0 0 56px;height:64px;overflow:hidden}.hospital-logo img{width:68px;height:auto;display:block;transform:translate(-6px,-2px)}.hospital-header p{margin:0}.eyebrow{letter-spacing:.02em;font-size:14px;font-weight:750}.campus{color:var(--muted);font-size:12px;margin-top:4px!important}.official-tag{color:var(--green);background:var(--green-pale);white-space:nowrap;border:1px solid #cfe0da;border-radius:999px;margin-left:auto;padding:5px 9px;font-size:11px;font-weight:700}.identity{align-items:center;gap:19px;padding:27px 4px 23px;display:flex}.avatar{background:var(--green-pale);border:3px solid #fff;border-radius:28px 28px 28px 10px;flex:0 0 88px;height:100px;overflow:hidden;box-shadow:0 13px 26px #8f302f33}.avatar img{object-fit:cover;object-position:center 15%;width:100%;height:100%;display:block}.identity-copy{min-width:0}.role{color:var(--orange);letter-spacing:.04em;margin:0 0 4px;font-size:13px;font-weight:750}h1{color:var(--heading);align-items:baseline;gap:9px;margin:0;font-family:STSong,SimSun,PingFang SC,serif;font-size:clamp(34px,10vw,44px);line-height:1.15;display:flex}h1 small{color:var(--green-deep);white-space:nowrap;font-family:PingFang SC,Microsoft YaHei,sans-serif;font-size:15px;font-weight:750}.specialty{color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.6}.clinic-schedule{background:var(--green-pale);border:1px solid #b648432e;border-radius:15px;align-items:center;gap:12px;margin:0 0 21px;padding:12px 14px;display:flex}.clinic-schedule>span{color:#fff;background:var(--green);border-radius:9px;flex:none;padding:5px 8px;font-size:11px;font-weight:800}.clinic-schedule>div{color:var(--green-deep);flex-wrap:wrap;align-items:center;gap:7px;font-size:13px;display:flex}.clinic-schedule strong{font-weight:800}.clinic-schedule i{color:#c29a97;font-style:normal}.booking-guide{margin-top:2px}.booking-heading{justify-content:space-between;align-items:end;gap:12px;margin-bottom:12px;display:flex}.booking-heading p,.booking-heading h2{margin:0}.booking-kicker{color:var(--orange);letter-spacing:.08em;font-size:11px;font-weight:800}.booking-heading h2{margin-top:3px;font-size:21px}.booking-heading>span{color:var(--green);background:var(--green-pale);white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:750}.booking-options{gap:11px;display:grid}.booking-option{border-radius:19px;padding:17px}.booking-option-primary{box-shadow:0 10px 25px rgba(var(--shadow-rgb), .08);background:linear-gradient(145deg,#fff8f5,#f9e9e5);border:1px solid #b6484347}.booking-option-secondary{border:1px solid var(--line);background:#fffdfb}.option-topline{justify-content:space-between;align-items:center;gap:10px;display:flex}.option-number{color:var(--green-deep);letter-spacing:.08em;font-size:12px;font-weight:850}.recommended,.alternative{border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.recommended{color:#fff;background:var(--green)}.alternative{color:var(--green-deep);background:var(--green-pale)}.booking-option h3{color:var(--heading);margin:8px 0 4px;font-size:18px}.option-description{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.route-line{color:#70595c;flex-wrap:wrap;align-items:center;gap:5px;margin-top:12px;font-size:12px;font-weight:720;display:flex}.route-line strong{color:#fff;background:var(--green);border-radius:7px;padding:4px 7px;font-size:12px}.route-line i{color:#b39a9b;font-style:normal}.route-line .target-department{color:#972f2a;background:#fff0ec;border:1px solid #dca7a1;border-radius:7px;padding:3px 7px;font-weight:900}.booking-action{text-align:left;cursor:pointer;border-radius:15px;align-items:center;gap:12px;width:100%;margin-top:14px;padding:14px 15px;text-decoration:none;display:flex}.booking-action>span:first-child{gap:3px;display:grid}.booking-action strong{font-size:15px}.booking-action small{font-size:10px}.booking-action-primary{color:#fff;background:linear-gradient(135deg, var(--primary-start), var(--primary-end));box-shadow:0 10px 22px rgba(var(--shadow-rgb), .2);border:0}.booking-action-primary small{color:#ffffffc7}.booking-action-primary.is-copied{background:var(--green-deep)}.booking-action-secondary{color:var(--green-deep);background:var(--green-pale);border:1px solid #b648433d}.booking-action-secondary small{color:#8d6f70}.action-arrow{margin-left:auto;font-family:Arial,sans-serif;font-size:29px;font-weight:300}.booking-status{min-height:14px;color:var(--green-deep);margin:7px 2px -2px;font-size:10px;font-weight:700}.tutorial-example{margin-top:11px}.tutorial-example summary{color:var(--green-deep);box-shadow:0 5px 14px rgba(var(--shadow-rgb), .08);cursor:pointer;background:linear-gradient(135deg,#fff8f4,#f6e3df);border:1px solid #b6484347;border-radius:14px;align-items:center;gap:10px;padding:11px 12px;list-style:none;display:flex}.tutorial-example summary::-webkit-details-marker{display:none}.tutorial-play{color:#fff;background:var(--green);width:30px;height:30px;box-shadow:0 5px 12px rgba(var(--shadow-rgb), .18);border-radius:50%;flex:0 0 30px;place-items:center;font-size:11px;display:grid}.tutorial-label{gap:2px;min-width:0;display:grid}.tutorial-label strong{font-size:12px;font-weight:850;line-height:1.35}.tutorial-label small{color:#8b7172;font-size:9px;font-weight:650;line-height:1.35}.tutorial-toggle{color:#fff;background:var(--green-deep);white-space:nowrap;border-radius:999px;margin-left:auto;padding:4px 7px;font-size:9px;font-weight:800}.tutorial-toggle:before{content:"展开"}.tutorial-example[open] .tutorial-toggle:before{content:"收起"}.tutorial-example[open] summary{border-radius:14px 14px 8px 8px}.tutorial-content{padding:10px 0 2px}.tutorial-content>p{color:#6e5a5c;margin:0 0 10px;font-size:11px;line-height:1.7}.tutorial-modes{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:11px;display:grid}.tutorial-mode{min-height:40px;color:var(--green-deep);cursor:pointer;background:#fffaf8;border:1px solid #b6484340;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:9px 8px;font-size:11px;font-weight:800;display:flex}.tutorial-mode.is-active{border-color:var(--green);color:#fff;background:var(--green);box-shadow:0 6px 13px rgba(var(--shadow-rgb), .16)}.tutorial-panel[hidden]{display:none}.tutorial-content video{width:min(100%,280px);box-shadow:0 10px 24px rgba(var(--shadow-rgb), .12);background:#201717;border:1px solid #b648432e;border-radius:17px;margin:0 auto;display:block}.swipe-hint{color:#8b7172;text-align:center;margin:0 0 7px;font-size:9px;font-weight:700}.tutorial-step-strip{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-color:#d8aaa4 transparent;grid-auto-columns:min(82%,255px);grid-auto-flow:column;gap:10px;padding:2px 2px 9px;display:grid;overflow-x:auto}.tutorial-step-strip figure{box-shadow:0 6px 14px rgba(var(--shadow-rgb), .07);scroll-snap-align:start;background:#fff;border:1px solid #b648432e;border-radius:15px;margin:0;padding:7px}.tutorial-step-strip a{background:#f1ece9;border-radius:10px;display:block;overflow:hidden}.tutorial-step-strip img{width:100%;height:auto;display:block}.tutorial-step-strip figcaption{color:#65494b;align-items:center;gap:7px;min-height:39px;padding:7px 3px 1px;font-size:10px;font-weight:750;line-height:1.4;display:flex}.tutorial-step-strip figcaption b{color:#fff;background:var(--green);border-radius:7px;flex:none;padding:3px 6px;font-size:9px}.tutorial-overview-link{color:var(--green-deep);text-align:center;margin-top:5px;font-size:10px;font-weight:750;text-decoration:none;display:block}.profile-card{margin-top:18px;padding:26px 24px;scroll-margin-top:18px}.section-kicker{color:#95a7a2;letter-spacing:.22em;font-size:9px;font-weight:800}.section-heading-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:14px;margin-top:11px;padding-bottom:20px;display:flex}.section-heading-row p,.section-heading-row h2{margin:0}.section-label{color:var(--orange);margin:0;font-size:12px;font-weight:750}h2{margin:4px 0 0;font-family:STSong,SimSun,PingFang SC,serif;font-size:25px;line-height:1.3}.title-chip{color:var(--green);background:var(--green-pale);white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:700}.expertise-block,.bio-block{padding-top:22px}.block-label{color:var(--green-deep);align-items:center;gap:8px;margin:0 0 11px;font-size:14px;font-weight:800;display:flex}.block-label>span{color:#fff;background:var(--green);border-radius:9px;place-items:center;width:27px;height:27px;font-size:12px;display:grid}.expertise-block>p:last-child,.bio-block>p{color:#48625d;margin:0;font-size:14px;line-height:1.9}.bio-block>p+p{margin-top:11px}.contact-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;margin-top:18px;padding:24px;display:grid}.contact-copy>p:nth-of-type(2){color:#607772;margin:10px 0 0;font-size:12px;line-height:1.7}.contact-copy>small{color:#9a7777;margin-top:9px;font-size:10px;line-height:1.6;display:block}.contact-qr-wrap{text-align:center}.contact-qr-frame{aspect-ratio:1;background:#fff;border:1px solid #dce7e3;border-radius:17px;width:210px;position:relative;overflow:hidden}.contact-qr-frame img{width:136.5%;max-width:none;height:auto;display:block;position:absolute;top:-49.7%;left:-18.5%}.contact-qr-wrap>p{color:#607772;margin:7px 0 0;font-size:10px}footer{color:#748781;text-align:center;width:min(100%,540px);margin:18px auto 0}footer p{margin:4px 0;font-size:11px}.filing-placeholder{opacity:.72}.patient-clinic-page .content-stack{width:min(100%,620px)}.patient-clinic-page .doctor-card{margin-top:16px}.patient-clinic-page .page-shell{padding:18px 14px 30px}.patient-clinic-page #booking-guide,.patient-clinic-page #doctor-profile{scroll-margin-top:24px}.patient-back{color:#8f302f;justify-content:space-between;align-items:center;gap:18px;padding:10px 3px;font-size:14px;text-decoration:none;display:flex}.patient-back small{color:#857174;font-size:12px}.patient-clinic-page .panel-index{display:none}.patient-clinic-page footer{width:min(100%,620px)}.patient-clinic-page .contact-qr-wrap .qr-save-link{color:#8f302f;border:1px solid #c77d76;border-radius:10px;justify-content:center;min-height:42px;margin-top:10px;padding:9px 15px;font-size:13px;text-decoration:none;display:inline-flex}@media (width<=520px){.contact-card{grid-template-columns:1fr;padding:20px}.contact-qr-wrap{justify-self:center}.clinic-schedule{flex-direction:column;align-items:flex-start;gap:8px}}@media (width<=370px){.doctor-card,.profile-card,.contact-card{padding:18px}.hospital-logo{flex-basis:47px;height:54px}.hospital-logo img{width:60px}.official-tag{display:none}.identity{gap:13px}.avatar{flex-basis:72px;height:87px}.identity h1{font-size:34px}.identity h1 small{font-size:13px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
