:root{--ink:#173f5f;--blue:#4d91bd;--gold:#bf9a58;--glass:#f6fbfdcc;--title-font:"STKaiti", "KaiTi", "STSong", "SimSun", serif;--ui-font:"PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;font-family:var(--ui-font);color:var(--ink);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#eaf4f8}*{box-sizing:border-box}html,body,#root{min-width:0;min-height:100%;margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}.home-page,.subject-page{isolation:isolate;background:#eaf4f8;grid-template-rows:auto minmax(410px,1fr) auto auto;min-height:100dvh;display:grid;position:relative;overflow:clip}.landscape{z-index:-2;object-fit:cover;object-position:center;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.mist-wash{z-index:-1;pointer-events:none;background:radial-gradient(at 50% 44%,#ffffffe0,#f1f9fb3b 42%,#deeff62e 72%),linear-gradient(#f7fcfe1f,#ebf7fb3d);position:absolute;inset:0}.home-header{color:#245676;grid-template-rows:auto auto;grid-template-columns:1fr auto;gap:7px 22px;padding:clamp(30px,6vw,72px) clamp(26px,8vw,100px) 0;display:grid}.header-motto,.header-quote{font-family:var(--title-font);letter-spacing:.12em;margin:0}.header-motto{font-size:clamp(18px,2.6vw,27px);line-height:1.52}.header-quote{opacity:.9;grid-area:1/2/span 2;align-self:end;font-size:clamp(13px,1.6vw,18px);line-height:1.55}.header-rule{border-top:1px solid #325e7847;align-items:center;width:min(20vw,150px);height:14px;display:flex}.header-rule:before{content:"";background:var(--gold);width:44px;height:3px}.header-rule span{background:var(--blue);border-radius:50%;width:4px;height:4px;margin-left:24px;display:block}.carousel{touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:grab;min-height:clamp(390px,53vw,600px);position:relative;overflow:hidden}.carousel:active{cursor:grabbing}.subject-track{transform:translateX(var(--track-x));transition:transform .42s cubic-bezier(.22,.8,.28,1);position:absolute;inset:0}.subject-track.is-dragging,.subject-track.is-reset{transition:none}.subject-disc{top:49%;left:calc(50% + var(--slot-x));aspect-ratio:1;cursor:pointer;width:min(68vw,430px);transform:translate(-50%, -50%) scale(var(--disc-scale));background:0 0;border:0;padding:0;transition:transform .42s cubic-bezier(.22,.8,.28,1),opacity .42s;position:absolute}.subject-disc:not(.disc-0){opacity:.88;pointer-events:none}.subject-disc.disc--2,.subject-disc.disc-2{opacity:0}.subject-disc img,.disc-paper{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.disc-paper{background:#f9fbf6d1;border:2px solid #bf9a58bf;border-radius:50%;display:block;box-shadow:0 20px 34px #3455682b}.subject-disc img:not([hidden])+.subject-fallback{display:none}.subject-fallback{font-family:var(--title-font);color:var(--ink);border-radius:50%;place-items:center;font-size:clamp(36px,8vw,72px);display:grid;position:absolute;inset:0}.subject-name{z-index:1;color:#103d60;font-family:var(--title-font);letter-spacing:.08em;text-shadow:0 2px 12px #ffffffb8;justify-items:center;gap:.04em;font-size:clamp(44px,10vw,84px);font-weight:700;line-height:.86;display:grid;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.subject-english{z-index:1;color:#27587a;letter-spacing:.29em;text-align:center;width:80%;font-family:Georgia,serif;font-size:clamp(9px,1.6vw,14px);position:absolute;bottom:17%;left:50%;transform:translate(-50%)}.subject-disc:not(.disc-0) .subject-name{font-size:clamp(27px,6vw,47px);top:49%}.subject-disc:not(.disc-0) .subject-english{display:none}.switcher-controls{color:#285a7b;justify-content:center;align-items:center;gap:clamp(20px,6vw,62px);padding:2px 20px 0;display:flex}.switcher-controls p{font-family:var(--title-font);letter-spacing:.18em;margin:0;font-size:clamp(17px,2.7vw,27px)}.switcher-controls button{color:#1f597d;cursor:pointer;background:0 0;border:0;width:50px;height:50px;padding-bottom:6px;font-family:Georgia,serif;font-size:62px;line-height:34px;transition:transform .18s,color .18s}.switcher-controls button:hover{color:var(--gold);transform:scale(1.12)}.home-footer-copy{color:#487997;text-align:center;justify-items:center;gap:8px;padding:clamp(22px,4vw,42px) 20px clamp(106px,13vw,140px);display:grid}.home-footer-copy p{font-family:var(--title-font);letter-spacing:.22em;margin:0;font-size:clamp(18px,2.4vw,25px)}.home-footer-copy span{letter-spacing:.21em;opacity:.75;font-family:Georgia,serif;font-size:10px}.bottom-nav{min-height:92px;padding:14px max(22px, env(safe-area-inset-left)) max(13px, env(safe-area-inset-bottom)) max(22px, env(safe-area-inset-right));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(120deg,#fafeffdb,#e3f0f6c4);border:1px solid #ffffffb8;border-bottom:0;border-radius:28px 28px 0 0;grid-template-columns:repeat(4,1fr);display:grid;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -8px 30px #4b72881f}.nav-item{color:#8ba1b1;place-items:center;gap:4px;font-size:13px;text-decoration:none;display:grid}.nav-item>span{font-family:Georgia,serif;font-size:29px;line-height:1}.nav-item.is-active{color:#164c73;font-weight:700;position:relative}.nav-item.is-active:after{content:"";background:#1b557b;border-radius:3px;width:38px;height:3px;position:absolute;bottom:-7px}.subject-page{place-items:center;padding:28px;display:grid}.subject-page-card{text-align:center;background:#fdfefbbd;border:1px solid #be9b5a8a;border-radius:28px;justify-items:center;width:min(100%,440px);padding:36px 28px;display:grid;position:relative;box-shadow:0 20px 65px #2f596f2e}.eyebrow,.subject-page-copy{color:#477692;letter-spacing:.12em;font-size:14px}.eyebrow{margin:0}.subject-page-disc{width:190px;margin:20px 0 8px}.subject-page h1{font-family:var(--title-font);margin:0;font-size:52px}.subject-page-english{color:#336182;letter-spacing:.2em;margin:5px 0 14px;font-family:Georgia,serif;font-size:12px}.subject-page-copy{margin:0 0 26px}.subject-page button{border:1px solid var(--gold);min-width:140px;min-height:44px;color:var(--ink);cursor:pointer;background:#fffdf8;border-radius:22px}.course-page{min-height:100dvh;padding-bottom:calc(104px + env(safe-area-inset-bottom));background:#eaf4f8;position:relative;overflow-x:clip}.course-hero{min-height:386px;color:var(--ink);position:relative;overflow:hidden}.course-hero-art{object-fit:cover;object-position:52% center;width:100%;height:100%;position:absolute;inset:0}.course-hero-wash{background:linear-gradient(#f9fdfe0d,#f6fcfe1f 46%,#ebf7fbd6);position:absolute;inset:0}.course-topbar{z-index:1;padding:max(20px, calc(env(safe-area-inset-top) + 12px)) max(24px, env(safe-area-inset-right)) 0 max(24px, env(safe-area-inset-left));justify-content:space-between;align-items:center;display:flex;position:relative}.course-topbar button,.recent-heading-row button,.continue-study{font:inherit;cursor:pointer}.course-back{color:#1b4d70;min-width:84px;min-height:44px;font-family:var(--title-font);letter-spacing:.08em;background:0 0;border:0;align-items:center;padding:0;font-size:20px;display:inline-flex}.course-back span{margin:-3px 8px 0 0;font-family:Georgia,serif;font-size:48px;font-weight:400;line-height:.5}.course-search{background:0 0;border:0;place-items:center;width:44px;height:44px;padding:0;display:grid}.course-search span{border:3px solid #174b6d;border-radius:50%;width:23px;height:23px;position:relative}.course-search span:after{content:"";transform-origin:0;background:#174b6d;border-radius:3px;width:11px;height:3px;position:absolute;bottom:-6px;right:-8px;transform:rotate(47deg)}.course-title-group{z-index:1;width:min(100%,960px);margin:64px auto 0;padding:0 44px;animation:.18s cubic-bezier(.22,.8,.28,1) both course-reveal;position:relative}.course-title-group h1{color:#103e60;font-family:var(--title-font);letter-spacing:.08em;text-shadow:0 2px 16px #ffffffc2;align-items:center;gap:12px;margin:0;font-size:clamp(54px,8vw,90px);font-weight:700;line-height:1;display:flex}.course-title-group h1 sup{color:#c94b3f;width:28px;height:36px;font-family:var(--title-font);letter-spacing:0;border:2px solid #c94b3f;border-radius:4px;place-items:center;font-size:16px;font-weight:400;line-height:1;display:inline-grid}.course-title-group>p:last-child{color:#2e5d7c;font-family:var(--title-font);letter-spacing:.13em;margin:18px 0 0;font-size:clamp(17px,2.8vw,28px)}.course-motto{color:#2e5d7c;font-family:var(--title-font);letter-spacing:.12em;opacity:.9;margin:0;font-size:15px;line-height:1.55;position:absolute;top:-31px;right:46px}.course-dashboard{z-index:2;background:linear-gradient(145deg,#fcfefed1,#e8f4f9c2);border:1px solid #ffffffb8;border-radius:32px 32px 0 0;width:min(100%,1040px);margin:-16px auto 0;padding:28px clamp(20px,4vw,44px) 44px;position:relative;box-shadow:0 -14px 40px #4f778e14}.course-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.course-action-card{color:#1d4d70;text-align:left;border:1px solid #ffffffe6;border-radius:24px;min-height:148px;padding:17px 13px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 23px #45697c1c,inset 0 1px #ffffffe0}.course-action-card:hover,.course-action-card:focus-visible{border-color:#bf9a58b8;outline:none;transform:translateY(-3px);box-shadow:0 16px 28px #45697c29,inset 0 1px #fff}.course-action-card.is-selected{border-color:#bf9a58c2;box-shadow:0 0 0 3px #bf9a5821,0 15px 26px #45697c24,inset 0 1px #fff}.course-action-card:active{transform:scale(.97);box-shadow:inset 0 4px 12px #2a536d1f}.course-action-card.tone-blue{background:linear-gradient(145deg,#f7fdfff5,#dbedf7de)}.course-action-card.tone-jade{background:linear-gradient(145deg,#fbfefaf7,#e0f0eae0)}.course-action-card.tone-warm{background:linear-gradient(145deg,#fffefbf7,#f4eee2e6)}.course-action-card>img{object-fit:contain;mix-blend-mode:multiply;opacity:.86;pointer-events:none;width:112px;height:112px;position:absolute;top:-19px;right:-24px}.course-card-copy{z-index:1;align-self:end;gap:7px;max-width:calc(100% - 8px);display:grid;position:relative}.course-card-copy strong{font-family:var(--title-font);letter-spacing:.05em;white-space:nowrap;font-size:clamp(17px,2.2vw,23px)}.course-card-copy small{color:#5d7f96;font-family:var(--ui-font);font-size:clamp(11px,1.4vw,14px);line-height:1.35}.course-card-arrow{z-index:1;color:#386787;font-family:Georgia,serif;font-size:35px;font-weight:400;line-height:.5;position:absolute;bottom:12px;right:12px}.learning-progress,.recent-study{background:#fafdfeb8;border:1px solid #ffffffd9;border-radius:28px;margin-top:28px;box-shadow:0 13px 28px #496f8314,inset 0 1px #fff}.learning-progress{padding:24px;position:relative;overflow:hidden}.learning-progress:after{content:"";pointer-events:none;background:radial-gradient(at 100% 100%,#a0cae042,#0000 66%);border-radius:50% 0 0;width:240px;height:154px;position:absolute;bottom:-15px;right:-22px}.learning-progress h2,.recent-study h2{z-index:1;color:#1c4e70;font-family:var(--title-font);letter-spacing:.08em;margin:0;font-size:clamp(22px,3vw,30px);position:relative}.learning-progress h2 span{color:#3d83af;margin-right:8px;font-family:Georgia,serif}.progress-summary{z-index:1;grid-template-columns:132px minmax(0,1fr);align-items:center;gap:24px;margin-top:20px;display:grid;position:relative}.progress-ring{aspect-ratio:1;background:conic-gradient(#287ca9 0 28%, #dce8ee 28% 100%);color:#194d70;border-radius:50%;place-content:center;justify-items:center;width:132px;display:grid;position:relative}.progress-ring:before{content:"";border-radius:inherit;background:#fafdfef2;position:absolute;inset:12px;box-shadow:inset 0 2px 8px #365f750f}.progress-ring strong,.progress-ring span{z-index:1;font-family:var(--title-font);position:relative}.progress-ring strong{font-size:31px;line-height:1}.progress-ring span{color:#618098;margin-top:7px;font-size:14px}.progress-detail p{color:#315e7d;font-family:var(--title-font);letter-spacing:.06em;margin:0;font-size:clamp(17px,2.3vw,24px)}.progress-detail b{color:#144a70}.progress-track{background:#dce7ed;border-radius:8px;height:12px;margin:16px 0;display:block;overflow:hidden}.progress-track i{border-radius:inherit;background:linear-gradient(90deg,#226f9e,#5ba2c7);width:28%;height:100%;display:block}.progress-detail blockquote{color:#6c8ba0;font-family:var(--title-font);letter-spacing:.07em;margin:0;font-size:14px;line-height:1.7}.progress-detail cite{text-align:right;margin-top:3px;font-style:normal;display:block}.recent-study{padding:24px}.recent-heading-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.recent-heading-row button{color:#587a92;min-height:44px;font-family:var(--title-font);background:0 0;border:0;padding:0;font-size:16px}.recent-heading-row button span{vertical-align:-2px;margin-left:3px;font-family:Georgia,serif;font-size:30px}.recent-case{background:#ffffffc2;border-radius:20px;grid-template-columns:100px minmax(0,1fr);gap:16px;margin-top:16px;padding:14px 14px 60px;display:grid;position:relative;box-shadow:inset 0 1px #fff}.recent-case>img{object-fit:cover;object-position:center;border-radius:14px;width:100px;height:112px}.recent-case h3{color:#1d4d70;font-family:var(--title-font);letter-spacing:.06em;margin:4px 0 8px;font-size:clamp(18px,2.8vw,25px)}.recent-case p{color:#456e88;font-family:var(--title-font);margin:0;font-size:clamp(14px,2vw,18px);line-height:1.5}.recent-case small{color:#6f8da1;margin-top:12px;font-size:13px;display:block}.continue-study{color:#fff;min-height:36px;font-family:var(--title-font);background:linear-gradient(135deg,#236c9b,#4b93bd);border:0;border-radius:12px;padding:0 14px;font-size:15px;position:absolute;bottom:13px;right:14px;box-shadow:inset 0 1px #fff6}.continue-study span{vertical-align:-2px;margin-left:3px;font-family:Georgia,serif;font-size:25px}.course-bottom-nav{z-index:10;position:fixed}.course-action-feedback{z-index:11;right:24px;bottom:calc(104px + env(safe-area-inset-bottom));color:#fff;font-family:var(--ui-font);background:#173f5fe6;border:1px solid #ffffffdb;border-radius:16px;margin:0;padding:10px 16px;font-size:14px;animation:.22s ease-out both feedback-reveal;position:fixed;box-shadow:0 12px 28px #284c6333}.case-list-page{min-height:100dvh;padding-bottom:calc(104px + env(safe-area-inset-bottom));background:#eaf4f8;overflow-x:clip}.case-list-hero{min-height:306px;color:var(--ink);position:relative;overflow:hidden}.case-list-hero-art{object-fit:cover;object-position:52% 50%;width:100%;height:100%;position:absolute;inset:0}.case-list-hero-wash{background:linear-gradient(#f9fdfe0f,#ebf7fbeb 96%);position:absolute;inset:0}.case-list-topbar{z-index:1;padding:max(20px, calc(env(safe-area-inset-top) + 12px)) max(24px, env(safe-area-inset-right)) 0 max(24px, env(safe-area-inset-left));justify-content:space-between;align-items:flex-start;display:flex;position:relative}.case-list-topbar>p{color:#285879;font-family:var(--title-font);letter-spacing:.12em;margin:8px 20px 0 0;font-size:14px;line-height:1.55}.case-list-title-group{z-index:1;width:min(100%,960px);margin:57px auto 0;padding:0 44px;animation:.18s cubic-bezier(.22,.8,.28,1) both course-reveal;position:relative}.case-list-title-group h1{color:#103e60;font-family:var(--title-font);letter-spacing:.06em;align-items:center;gap:12px;margin:0;font-size:clamp(48px,7.5vw,82px);font-weight:700;line-height:1;display:flex}.case-list-title-group h1 sup{color:#c94b3f;width:31px;height:42px;font-family:var(--title-font);letter-spacing:0;border:2px solid #c94b3f;border-radius:5px;place-items:center;font-size:15px;font-weight:400;line-height:1;display:grid}.case-list-title-group>p{color:#2d5f80;font-family:var(--title-font);letter-spacing:.12em;margin:18px 0 0;font-size:clamp(17px,2.6vw,25px)}.case-list-content{z-index:2;background:linear-gradient(145deg,#f8fdfeeb,#e5f3f9db);border-radius:28px 28px 0 0;width:min(100%,1040px);margin:-8px auto 0;padding:20px clamp(20px,4vw,44px) 40px;position:relative;box-shadow:0 -12px 28px #446b8014}.case-category-row{scrollbar-width:none;align-items:center;gap:10px;padding:0 0 8px;display:flex;overflow-x:auto}.case-category-row::-webkit-scrollbar{display:none}.case-category-row button{color:#386280;min-height:46px;font-family:var(--title-font);cursor:pointer;background:#fcfeffb8;border:1px solid #ffffffeb;border-radius:23px;flex:none;padding:0 21px;font-size:18px;transition:transform .18s,background .18s,color .18s;box-shadow:0 5px 12px #4a728712,inset 0 1px #fff}.case-category-row button:active{transform:scale(.95)}.case-category-row button.is-active{color:#fff;background:linear-gradient(135deg,#246d9b,#4e9bc4);border-color:#0000;box-shadow:0 8px 18px #2c719a3d,inset 0 1px #ffffff57}.case-category-row .case-search-control,.case-category-row .case-filter-control{width:46px;box-shadow:none;color:#1b557b;background:0 0;place-items:center;padding:0;display:grid}.case-search-control span{border:3px solid #1c587c;border-radius:50%;width:22px;height:22px;position:relative}.case-search-control span:after{content:"";transform-origin:0;background:#1c587c;border-radius:3px;width:10px;height:3px;position:absolute;bottom:-6px;right:-8px;transform:rotate(46deg)}.case-filter-control span{font-family:Georgia,serif;font-size:28px;line-height:1;transform:rotate(90deg)}.case-summary-row{background:#fdfeffba;border-radius:19px;justify-content:space-between;align-items:center;gap:12px;margin:14px 0 12px;padding:16px 18px;display:flex;box-shadow:0 9px 19px #476d8112,inset 0 1px #fff}.case-summary-row p{color:#2d5f80;font-family:var(--title-font);letter-spacing:.05em;white-space:nowrap;margin:0;font-size:clamp(14px,2.1vw,20px)}.case-summary-row p span{color:#3f85ae;margin-right:8px;font-family:Georgia,serif}.case-summary-row button{color:#456f89;min-height:36px;font-family:var(--title-font);cursor:pointer;background:0 0;border:0;flex:none;padding:0;font-size:15px}.case-summary-row button span{vertical-align:-1px;margin-left:4px;font-family:Georgia,serif;font-size:24px}.case-study-stack{gap:14px;display:grid}.case-study-card{background:linear-gradient(135deg,#fdffffe0,#e5f3f9d1);border:1px solid #ffffffe0;border-radius:23px;grid-template-columns:100px minmax(0,1fr) 116px;gap:16px;min-height:178px;padding:14px;display:grid;position:relative;overflow:hidden;box-shadow:0 12px 26px #466d821a,inset 0 1px #fff}.case-study-card:after{content:"";pointer-events:none;background:radial-gradient(at 100% 0,#a7cdde45,#0000 68%);border-radius:50%;width:250px;height:180px;position:absolute;top:-55px;right:-62px}.case-study-card>img{z-index:1;object-fit:cover;object-position:center;background:#e6f1f7bd;border-radius:15px;width:100px;height:126px;position:relative}.case-study-main{z-index:1;min-width:0;padding-top:2px;position:relative}.case-category-badge{color:#39779e;font-family:var(--title-font);background:#cae2efcc;border-radius:14px;padding:5px 13px;font-size:14px;display:inline-block}.case-study-main h2{color:#1c4f73;font-family:var(--title-font);letter-spacing:.05em;margin:10px 0 7px;font-size:clamp(20px,2.8vw,28px);line-height:1.2}.case-study-main p{color:#3f6a86;font-family:var(--title-font);margin:0;font-size:clamp(15px,2.1vw,19px);line-height:1.45}.case-progress{color:#39719a;font-family:var(--title-font);white-space:nowrap;align-items:center;gap:11px;margin-top:13px;font-size:14px;display:flex}.case-progress>span{background:#dce8ee;border-radius:8px;width:min(100%,158px);height:11px;display:block;overflow:hidden}.case-progress i{border-radius:inherit;background:linear-gradient(90deg,#267ba9,#5eafd0);height:100%;display:block}.case-study-action{z-index:1;color:#fff;min-height:52px;font-family:var(--title-font);white-space:nowrap;cursor:pointer;background:linear-gradient(135deg,#236f9e,#4c9ac4);border:0;border-radius:14px;align-self:center;padding:0 16px;font-size:17px;transition:transform .18s,filter .18s;position:relative;box-shadow:inset 0 1px #ffffff5c,0 9px 15px #266c9529}.case-study-action:hover,.case-study-action:focus-visible{filter:saturate(1.1)brightness(1.05);outline:none;transform:translateY(-2px)}.case-study-action:active{transform:scale(.96)}.case-study-action b{vertical-align:-2px;margin-left:6px;font-family:Georgia,serif;font-size:28px;font-weight:400}.case-study-action.is-completed{color:#346b67;background:linear-gradient(135deg,#8cc8bc,#b7dfd6)}.case-study-action.is-completed b{color:#fff;width:21px;height:21px;font-family:var(--ui-font);vertical-align:1px;background:#479b8d;border-radius:50%;place-items:center;margin:0 7px 0 0;font-size:14px;display:inline-grid}.case-study-actions{z-index:1;align-self:center;gap:8px;display:grid;position:relative}.case-study-actions .case-study-action{width:100%}.case-study-restart{color:#2d6689;min-height:40px;font-family:var(--title-font);cursor:pointer;background:#ffffffad;border:1px solid #37799f6b;border-radius:13px;font-size:15px;transition:transform .17s,background .17s}.case-study-restart:hover,.case-study-restart:focus-visible{background:#fffffff0;outline:3px solid #4494c129}.case-study-restart:active{transform:scale(.96)}.case-study-card footer{z-index:1;color:#527a94;font-family:var(--title-font);border-top:1px solid #4970851f;grid-column:1/-1;grid-template-columns:1.2fr .8fr 1fr;gap:12px;padding-top:11px;font-size:14px;display:grid;position:relative}.case-study-card footer span:last-child{text-align:right}.pneumonia-case-page{min-height:100dvh;padding-bottom:calc(108px + env(safe-area-inset-bottom));background:radial-gradient(at 50% 30%,#fff 0,#edf7fa 46%,#dcecf3 100%);overflow-x:clip}.pneumonia-case-hero{min-height:348px;color:var(--ink);position:relative;overflow:hidden}.pneumonia-case-hero-art{object-fit:cover;object-position:52% center;width:100%;height:100%;position:absolute;inset:0}.pneumonia-case-hero-wash{background:linear-gradient(#f9fdfe24,#eff9fc2e 48%,#e3f3f9e0);position:absolute;inset:0}.pneumonia-case-topbar{z-index:1;padding:max(20px, calc(env(safe-area-inset-top) + 12px)) max(24px, env(safe-area-inset-right)) 0 max(24px, env(safe-area-inset-left));justify-content:space-between;align-items:flex-start;display:flex;position:relative}.pneumonia-case-topbar>p{color:#285879;font-family:var(--title-font);letter-spacing:.12em;margin:8px 20px 0 0;font-size:14px;line-height:1.55}.pneumonia-case-title-row{z-index:1;justify-content:space-between;align-items:end;gap:18px;width:min(100%,820px);margin:43px auto 0;padding:0 clamp(24px,5vw,48px);animation:.18s cubic-bezier(.22,.8,.28,1) both course-reveal;display:flex;position:relative}.pneumonia-case-title-row>div>p{color:#245778;font-family:var(--title-font);letter-spacing:.12em;margin:0 0 12px;font-size:15px;line-height:1.55}.pneumonia-case-title-row h1{color:#103e60;font-family:var(--title-font);letter-spacing:.05em;text-shadow:0 2px 15px #ffffffd1;margin:0;font-size:clamp(32px,5.2vw,56px);line-height:1.12}.pneumonia-case-title-row>span{color:#23648d;background:#ffffff59;border:1px solid #2b64854d;border-radius:14px;place-items:center;width:44px;height:44px;margin-bottom:2px;font-family:Georgia,serif;font-size:27px;display:grid}.pneumonia-progress{z-index:1;grid-template-columns:minmax(120px,310px) auto;align-items:center;column-gap:16px;width:min(100%,820px);margin:22px auto 0;padding:0 clamp(24px,5vw,48px);display:grid;position:relative}.pneumonia-progress>span{background:#d6e6efeb;border-radius:12px;height:14px;overflow:hidden;box-shadow:inset 0 1px 3px #1d516d1a}.pneumonia-progress>span>i{border-radius:inherit;background:linear-gradient(90deg,#1d6f9f,#5ab4d1);height:100%;transition:width .3s;display:block;box-shadow:1px 0 9px #3d9cc373}.pneumonia-progress b{color:#174d72;font-family:Georgia,serif;font-size:18px;font-weight:400}.pneumonia-progress p{color:#46718d;font-family:var(--title-font);letter-spacing:.08em;grid-column:1/-1;margin:10px 0 0;font-size:15px}.pneumonia-case-content{z-index:2;gap:16px;width:min(100%,820px);margin:-12px auto 0;padding:0 clamp(20px,5vw,48px) 34px;display:grid;position:relative}.pneumonia-patient-card,.pneumonia-info-card,.pneumonia-question-card,.pneumonia-completion-card{background:linear-gradient(135deg,#fdffffe8,#e4f3f9d4);border:1px solid #ffffffe6;box-shadow:0 15px 30px #3768821c,inset 0 1px #fffffff5}.pneumonia-patient-card{border-radius:27px;grid-template-columns:168px minmax(0,1fr);gap:20px;padding:16px;display:grid}.pneumonia-patient-card>img{object-fit:cover;object-position:50% 37%;background:#e9f3f7;border-radius:19px;width:168px;height:178px}.pneumonia-case-badge{color:#3275a1;font-family:var(--title-font);background:#cbe5f3e6;border-radius:14px;padding:4px 13px;font-size:15px;display:inline-block}.pneumonia-patient-card h2{color:#164b70;font-family:var(--title-font);letter-spacing:.05em;margin:10px 0 7px;font-size:clamp(24px,3.7vw,34px)}.pneumonia-patient-card>div>p{color:#3e6884;font-family:var(--title-font);margin:0;font-size:17px;line-height:1.5}.pneumonia-patient-card dl{border-top:1px solid #39698321;grid-template-columns:.65fr .55fr 1.3fr;gap:9px;margin:14px 0 0;padding-top:12px;display:grid}.pneumonia-patient-card dt{color:#6f8ea2;font-size:12px}.pneumonia-patient-card dd{color:#245a7e;font-family:var(--title-font);margin:3px 0 0;font-size:15px;line-height:1.35}.pneumonia-info-card{border-radius:24px;padding:19px}.pneumonia-info-card h2,.pneumonia-question-card h2{color:#1b4d70;font-family:var(--title-font);letter-spacing:.06em;margin:0}.pneumonia-info-card h2{font-size:clamp(21px,3vw,28px)}.pneumonia-info-card h2 span{color:#3d86af;margin-right:8px;font-family:Georgia,serif}.pneumonia-fact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:14px;display:grid}.pneumonia-fact-grid>div{background:linear-gradient(135deg,#e9f7fddb,#daeff9b8);border-radius:16px;gap:5px;min-height:66px;padding:12px 14px;display:grid}.pneumonia-fact-grid>div.is-warm{background:linear-gradient(135deg,#ffefeeeb,#fee8e5c9)}.pneumonia-fact-grid strong{color:#285e82;font-family:var(--title-font);font-size:17px;line-height:1.25}.pneumonia-fact-grid .is-warm strong{color:#b14443}.pneumonia-info-trigger{color:#205a7d;cursor:pointer;background:#fafeffb3;border:1px solid #30709440;border-radius:16px;grid-template-columns:20px auto;align-items:center;gap:2px 5px;min-width:92px;min-height:44px;padding:5px 11px;display:grid;position:relative;box-shadow:inset 0 1px #ffffffd9,0 7px 16px #32688614}.pneumonia-info-trigger:active{transform:scale(.97)}.pneumonia-info-trigger:focus-visible{outline-offset:2px;outline:3px solid #3992c44d}.pneumonia-info-trigger>span{color:#367ca6;grid-row:1/3;font-family:Georgia,serif;font-size:21px;line-height:1}.pneumonia-info-trigger small{color:#3a6d8c;font-family:var(--title-font);letter-spacing:.06em;font-size:12px;line-height:1.1}.pneumonia-info-trigger b{color:#fff;background:linear-gradient(135deg,#2a78a7,#58afd0);border:2px solid #eff8fb;border-radius:50%;place-items:center;width:20px;height:20px;font-family:Georgia,serif;font-size:12px;font-weight:400;display:grid;position:absolute;top:-7px;right:-5px;box-shadow:0 4px 8px #296c9738}.pneumonia-info-drawer{z-index:40;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.pneumonia-info-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer;background:#13425b47;border:0;position:absolute;inset:0}.pneumonia-info-panel{width:min(100%,680px);max-height:min(78dvh,740px);padding:25px clamp(20px, 5vw, 32px) calc(28px + env(safe-area-inset-bottom));background:linear-gradient(155deg,#fefffffa,#e0f2f9fa);border:1px solid #ffffffeb;border-bottom:0;border-radius:30px 30px 0 0;animation:.24s cubic-bezier(.22,.8,.28,1) both pneumonia-drawer-enter;position:relative;overflow-y:auto;box-shadow:0 -18px 48px #1a4e6b40,inset 0 1px #fff}.pneumonia-info-panel>header{justify-content:space-between;align-items:center;gap:16px;display:flex}.pneumonia-info-panel>header p{color:#6890a7;font-family:var(--title-font);letter-spacing:.1em;margin:0 0 3px;font-size:13px}.pneumonia-info-panel>header h2{color:#174e72;font-family:var(--title-font);letter-spacing:.06em;margin:0;font-size:clamp(24px,4vw,30px)}.pneumonia-info-panel>header button{color:#34729a;cursor:pointer;background:#ffffffad;border:1px solid #3b769733;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;font-family:Georgia,serif;font-size:29px;line-height:1;display:grid}.pneumonia-drawer-profile{background:#ffffff9e;border:1px solid #689ebb26;border-radius:19px;grid-template-columns:84px minmax(0,1fr);align-items:center;gap:13px;margin-top:20px;padding:13px;display:grid}.pneumonia-drawer-profile img{object-fit:cover;object-position:50% 34%;background:#e6f3f8;border-radius:13px;width:84px;height:70px}.pneumonia-drawer-profile strong{color:#245d81;font-family:var(--title-font);letter-spacing:.03em;font-size:18px;font-weight:400}.pneumonia-drawer-profile p{color:#66889d;font-family:var(--title-font);margin:5px 0 0;font-size:14px;line-height:1.45}.pneumonia-drawer-facts,.pneumonia-drawer-timeline{margin-top:18px}.pneumonia-drawer-facts h3,.pneumonia-drawer-timeline h3{color:#245b7d;font-family:var(--title-font);letter-spacing:.05em;margin:0 0 10px;font-size:19px}.pneumonia-drawer-facts>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.pneumonia-drawer-facts span{color:#255f83;min-height:56px;font-family:var(--title-font);background:linear-gradient(135deg,#eff9fdf0,#daeff8bf);border-radius:14px;gap:4px;padding:9px 11px;font-size:14px;line-height:1.3;display:grid}.pneumonia-drawer-facts small{color:#7390a0;font-size:11px}.pneumonia-drawer-timeline{gap:10px;display:grid}.pneumonia-drawer-timeline h3{margin-bottom:0}.pneumonia-drawer-timeline article{background:#ffffffad;border:1px solid #5d95b329;border-radius:17px;padding:14px}.pneumonia-drawer-timeline article>p{color:#3777a0;font-family:var(--title-font);letter-spacing:.06em;margin:0 0 8px;font-size:14px}.pneumonia-drawer-timeline article>div+div{border-top:1px solid #4881a01f;margin-top:9px;padding-top:9px}.pneumonia-drawer-timeline h4{color:#245d82;font-family:var(--title-font);margin:0;font-size:17px;font-weight:400}.pneumonia-drawer-timeline span,.pneumonia-drawer-timeline li{color:#53758b;font-family:var(--title-font);font-size:14px;line-height:1.55}.pneumonia-drawer-timeline span{margin-top:4px;display:block}.pneumonia-drawer-timeline ul{gap:4px;margin:6px 0 0;padding-left:18px;display:grid}.pneumonia-question-card{border-radius:27px;padding:24px;animation:.16s both pneumonia-step-enter}.pneumonia-overline{color:#5181a0;font-family:var(--title-font);letter-spacing:.1em;margin:0 0 9px;font-size:15px}.pneumonia-question-card h2{font-size:clamp(24px,3.9vw,34px);line-height:1.35}.pneumonia-question-prompt{color:#56768d;font-family:var(--title-font);margin:10px 0 20px;font-size:16px;line-height:1.65}.pneumonia-option-stack{gap:11px;display:grid}.pneumonia-option{color:#245a7d;text-align:left;cursor:pointer;background:#ffffffbf;border:1px solid #fffffff5;border-radius:17px;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:12px;width:100%;min-height:66px;padding:10px 15px;transition:transform .17s,border-color .17s,background .17s,box-shadow .17s;display:grid;box-shadow:0 7px 16px #4370890f,inset 0 1px #fff}.pneumonia-option:hover,.pneumonia-option:focus-visible{border-color:#3387bc94;outline:none;transform:translateY(-1px);box-shadow:0 0 0 3px #4a9dcc1f,0 8px 18px #43708914}.pneumonia-option:active{transform:scale(.985)}.pneumonia-option>span{color:#2a74a0;background:linear-gradient(135deg,#e8f5fc,#c8e4f3);border-radius:50%;place-items:center;width:40px;height:40px;font-family:Georgia,serif;font-size:23px;display:grid}.pneumonia-option>b{font-family:var(--title-font);font-size:18px;font-weight:400;line-height:1.4}.pneumonia-option>i{color:#7795aa;font-family:Georgia,serif;font-size:31px;font-style:normal;line-height:1}.pneumonia-option.is-selected{background:linear-gradient(135deg,#f0fafffa,#d3effdeb);border-color:#2d93ce}.pneumonia-option.is-selected>span{color:#fff;background:linear-gradient(135deg,#297bab,#54acd0)}.pneumonia-option.is-wrong{background:linear-gradient(135deg,#fff8f7,#fdeae8);border-color:#d57b79}.pneumonia-option.is-wrong>span{background:linear-gradient(135deg,#c45e5d,#e08d85)}.pneumonia-option.is-correct{background:linear-gradient(135deg,#f4fcfa,#ddf2ec);border-color:#4ba68d}.pneumonia-option.is-correct>span{background:linear-gradient(135deg,#398d7a,#67b79f)}.pneumonia-answer-feedback{background:#e7f5fbdb;border:1px solid #4c86aa3d;border-radius:17px;margin-top:16px;padding:15px 17px;animation:.22s ease-out both feedback-reveal}.pneumonia-answer-feedback strong{color:#276b94;font-family:var(--title-font);font-size:20px}.pneumonia-answer-feedback p{color:#416b85;font-family:var(--title-font);margin:6px 0 0;font-size:16px;line-height:1.6}.pneumonia-answer-feedback.is-correct{background:#e6f7f0e6;border-color:#43947a4d}.pneumonia-answer-feedback.is-correct strong{color:#23745f}.pneumonia-answer-feedback.is-incorrect{background:#ffefede6;border-color:#c9666147}.pneumonia-answer-feedback.is-incorrect strong{color:#b64d4a}.pneumonia-unlock-stack{gap:11px;margin-top:15px;display:grid}.pneumonia-unlock-card,.pneumonia-detail-card{background:linear-gradient(135deg,#eff9fdeb,#ddf1f9c2);border:1px solid #699db82e;border-radius:18px;padding:16px}.pneumonia-unlock-card h3{color:#1f5d84;font-family:var(--title-font);letter-spacing:.06em;margin:0;font-size:20px}.pneumonia-unlock-card p,.pneumonia-unlock-card li,.pneumonia-detail-card p{color:#3d6884;font-family:var(--title-font);font-size:16px;line-height:1.6}.pneumonia-unlock-card p{margin:9px 0 0}.pneumonia-unlock-card ul{gap:6px;margin:9px 0 0;padding:0;list-style:none;display:grid}.pneumonia-unlock-card li{padding-left:16px;position:relative}.pneumonia-unlock-card li:before{content:"·";color:#4385ac;font-size:24px;line-height:.8;position:absolute;left:1px}.pneumonia-detail-card{padding:0;overflow:hidden}.pneumonia-detail-card button{color:#245f84;width:100%;min-height:52px;font-family:var(--title-font);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:0 16px;font-size:17px;display:flex}.pneumonia-detail-card button span{font-family:Georgia,serif;font-size:22px;transition:transform .18s}.pneumonia-detail-card button[aria-expanded=true] span{transform:rotate(180deg)}.pneumonia-detail-card p{margin:0;padding:0 16px 15px}.case-context-card{background:linear-gradient(135deg,#eef9fdf2,#dcf0f9d1);border:1px solid #659ab833;border-radius:18px;gap:9px;margin:0 0 20px;padding:16px;display:grid}.case-context-card h3{color:#205e83;font-family:var(--title-font);margin:0;font-size:19px;font-weight:500}.case-context-card p,.case-context-card li,.pneumonia-detail-content li{color:#3d6884;font-family:var(--ui-font);overflow-wrap:anywhere;margin:0;font-size:15px;line-height:1.6}.case-context-card ul,.pneumonia-detail-content ul{gap:7px;margin:0;padding-left:20px;display:grid}.pneumonia-detail-content{padding:0 16px 16px}.pneumonia-detail-content p{padding:0}.pneumonia-detail-content ul{margin-top:10px}.pneumonia-action-bar{z-index:20;padding:12px max(20px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-right));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(115deg,#fafefff0,#e1f1f8eb);border-top:1px solid #ffffffdb;grid-template-columns:1fr 1fr;gap:12px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -9px 26px #33617a1f}.pneumonia-action-bar button{min-height:50px;font-family:var(--title-font);cursor:pointer;border-radius:25px;font-size:18px;transition:transform .17s,filter .17s}.pneumonia-action-bar button:active{transform:scale(.97)}.pneumonia-secondary-action{color:#245d83;background:#ffffff9e;border:1px solid #4d91bd}.pneumonia-primary-action{color:#fff;background:linear-gradient(135deg,#1c6f9f,#4da8cf);border:0;box-shadow:inset 0 1px #ffffff5c,0 9px 18px #2a759f38}.pneumonia-primary-action:hover,.pneumonia-primary-action:focus-visible{filter:brightness(1.06)saturate(1.08);outline:none;transform:translateY(-1px)}.pneumonia-primary-action span{vertical-align:-2px;margin-left:5px;font-family:Georgia,serif;font-size:29px}.pneumonia-complete-hero{min-height:292px}.pneumonia-complete-title{z-index:1;color:#174d70;text-align:center;justify-items:center;margin-top:41px;animation:.18s both course-reveal;display:grid;position:relative}.pneumonia-complete-title>span{color:#fff;background:linear-gradient(135deg,#368d79,#73bea9);border-radius:50%;place-items:center;width:48px;height:48px;font-size:28px;display:grid;box-shadow:0 10px 20px #358c783b,inset 0 1px #ffffff7a}.pneumonia-complete-title p{color:#4e7994;font-family:var(--title-font);letter-spacing:.1em;margin:13px 0 4px;font-size:17px}.pneumonia-complete-title h1{font-family:var(--title-font);letter-spacing:.06em;margin:0;font-size:clamp(30px,5vw,48px)}.pneumonia-complete-content{margin-top:-13px}.pneumonia-completion-card{border-radius:27px;padding:25px}.pneumonia-completion-card h2{color:#1d567b;font-family:var(--title-font);margin:0;font-size:clamp(25px,4vw,34px);line-height:1.35}.pneumonia-reasoning-chain{gap:8px;margin-top:21px;display:grid}.pneumonia-reasoning-chain span{color:#3b6883;font-family:var(--title-font);gap:8px;font-size:16px;line-height:1.5;display:grid}.pneumonia-reasoning-chain b{color:#5fa0c3;justify-self:center;font-family:Georgia,serif;font-size:24px;font-weight:400;line-height:.7}.pneumonia-disclaimer{color:#6b899e;border-top:1px solid #36668024;margin:22px 0 0;padding-top:15px;font-size:12px;line-height:1.6}@keyframes course-reveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes feedback-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes case-card-enter{0%{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}@keyframes pneumonia-step-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pneumonia-drawer-enter{0%{opacity:0;transform:translateY(34px)}to{opacity:1;transform:translateY(0)}}@media (width<=560px){.home-page{grid-template-rows:auto minmax(350px,1fr) auto auto}.home-header{padding:31px 25px 0}.header-quote{font-size:12px}.carousel{min-height:min(112vw,470px)}.subject-disc{width:min(73vw,390px)}.subject-name{top:48%}.switcher-controls{gap:12px}.switcher-controls button{width:44px}.switcher-controls p{font-size:17px}.home-footer-copy{padding-bottom:103px}.bottom-nav{border-radius:24px 24px 0 0;min-height:87px}.course-hero{min-height:342px}.course-title-group{margin-top:54px;padding:0 28px}.course-title-group h1{font-size:59px}.course-title-group h1 sup{width:24px;height:31px;font-size:14px}.course-title-group>p:last-child{margin-top:16px;font-size:17px}.course-motto{font-size:13px;top:-28px;right:28px}.course-dashboard{border-radius:28px 28px 0 0;margin-top:-22px;padding:24px 20px 32px}.course-card-grid{gap:12px}.course-action-card{border-radius:20px;min-height:132px;padding:13px 10px}.course-action-card>img{width:98px;height:98px;top:-17px;right:-25px}.course-card-copy{gap:5px}.course-card-copy strong{font-size:17px}.course-card-copy small{font-size:11px}.course-card-arrow{font-size:30px;bottom:10px;right:8px}.learning-progress,.recent-study{border-radius:24px;margin-top:20px;padding:20px}.progress-summary{grid-template-columns:96px minmax(0,1fr);gap:16px;margin-top:16px}.progress-ring{width:96px}.progress-ring:before{inset:9px}.progress-ring strong{font-size:24px}.progress-ring span{margin-top:4px;font-size:12px}.progress-detail p{font-size:16px}.progress-track{height:10px;margin:12px 0}.progress-detail blockquote{font-size:12px;line-height:1.55}.recent-case{grid-template-columns:84px minmax(0,1fr);gap:12px;padding:12px 12px 56px}.recent-case>img{width:84px;height:102px}.recent-case h3{margin-top:3px;font-size:17px}.recent-case p{font-size:13px}.recent-case small{margin-top:8px;font-size:11px}.course-action-feedback{right:20px;bottom:calc(94px + env(safe-area-inset-bottom));font-size:13px}.case-list-hero{min-height:270px}.case-list-title-group{margin-top:44px;padding:0 28px}.case-list-title-group h1{font-size:52px}.case-list-title-group h1 sup{width:27px;height:34px;font-size:13px}.case-list-title-group>p{margin-top:14px;font-size:16px}.case-list-topbar>p{margin:8px 20px 0 0;font-size:12px}.case-list-content{border-radius:24px 24px 0 0;margin-top:-10px;padding:16px 20px 32px}.case-category-row{gap:8px}.case-category-row button{min-height:42px;padding:0 17px;font-size:16px}.case-category-row .case-search-control,.case-category-row .case-filter-control{width:42px;padding:0}.case-summary-row{align-items:flex-start;margin:10px 0 12px;padding:14px 13px}.case-summary-row p{letter-spacing:0;white-space:normal;font-size:11px;line-height:1.55}.case-summary-row button{font-size:13px}.case-study-stack{gap:12px}.case-study-card{border-radius:20px;grid-template-columns:84px minmax(0,1fr) 84px;gap:10px;min-height:166px;padding:12px}.case-study-card>img{border-radius:13px;width:84px;height:110px}.case-category-badge{padding:4px 10px;font-size:12px}.case-study-main h2{letter-spacing:0;margin:7px 0 5px;font-size:16px}.case-study-main p{font-size:13px;line-height:1.4}.case-progress{gap:6px;margin-top:9px;font-size:11px}.case-progress>span{min-width:48px;height:8px}.case-study-action{border-radius:12px;min-height:44px;padding:0 7px;font-size:13px}.case-study-action b{margin-left:2px;font-size:20px}.case-study-actions{gap:6px}.case-study-restart{border-radius:11px;min-height:38px;font-size:13px}.case-study-action.is-completed b{width:18px;height:18px;margin-right:3px;font-size:12px}.case-study-card footer{gap:6px;padding-top:9px;font-size:11px}.case-study-card footer span{white-space:nowrap}.case-study-card footer span:first-child{text-overflow:ellipsis;overflow:hidden}.pneumonia-case-page{padding-bottom:calc(100px + env(safe-area-inset-bottom))}.pneumonia-case-hero{min-height:306px}.pneumonia-case-topbar>p{margin:8px 20px 0 0;font-size:12px}.pneumonia-info-trigger{border-radius:14px;min-width:78px;min-height:40px;padding:4px 8px}.pneumonia-info-trigger>span{font-size:19px}.pneumonia-info-trigger small{font-size:11px}.pneumonia-info-trigger b{width:18px;height:18px;font-size:11px;top:-6px;right:-4px}.pneumonia-case-title-row{margin-top:32px;padding:0 24px}.pneumonia-case-title-row>div>p{margin-bottom:8px;font-size:13px}.pneumonia-case-title-row h1{white-space:nowrap;font-size:23px}.pneumonia-case-title-row>span{display:none}.pneumonia-progress{column-gap:12px;margin-top:18px;padding:0 24px}.pneumonia-progress>span{height:11px}.pneumonia-progress b{font-size:16px}.pneumonia-progress p{margin-top:8px;font-size:13px}.pneumonia-case-content{gap:13px;margin-top:-2px;padding:0 20px 28px}.pneumonia-patient-card{border-radius:22px;grid-template-columns:104px minmax(0,1fr);gap:12px;padding:12px}.pneumonia-patient-card>img{border-radius:14px;width:104px;height:136px}.pneumonia-case-badge{padding:3px 9px;font-size:12px}.pneumonia-patient-card h2{margin:6px 0 4px;font-size:22px}.pneumonia-patient-card>div>p{font-size:14px;line-height:1.4}.pneumonia-patient-card dl{grid-template-columns:.65fr .55fr 1.25fr;gap:5px;margin-top:8px;padding-top:8px}.pneumonia-patient-card dl div+div{padding-left:6px}.pneumonia-patient-card dt{font-size:10px}.pneumonia-patient-card dd{margin-top:2px;font-size:11px}.pneumonia-info-card{border-radius:21px;padding:16px}.pneumonia-info-card h2{font-size:20px}.pneumonia-fact-grid{gap:8px;margin-top:11px}.pneumonia-fact-grid>div{border-radius:14px;min-height:58px;padding:9px 11px}.pneumonia-fact-grid small{font-size:10px}.pneumonia-fact-grid strong{font-size:14px}.pneumonia-info-panel{max-height:82dvh;padding:21px 16px calc(24px + env(safe-area-inset-bottom));border-radius:26px 26px 0 0}.pneumonia-info-panel>header h2{font-size:25px}.pneumonia-info-panel>header button{width:38px;height:38px;font-size:26px}.pneumonia-drawer-profile{border-radius:16px;grid-template-columns:66px minmax(0,1fr);gap:10px;margin-top:15px;padding:10px}.pneumonia-drawer-profile img{border-radius:11px;width:66px;height:60px}.pneumonia-drawer-profile strong{font-size:15px}.pneumonia-drawer-profile p{font-size:12px}.pneumonia-drawer-facts,.pneumonia-drawer-timeline{margin-top:15px}.pneumonia-drawer-facts h3,.pneumonia-drawer-timeline h3{margin-bottom:8px;font-size:17px}.pneumonia-drawer-facts>div{gap:6px}.pneumonia-drawer-facts span{border-radius:12px;min-height:50px;padding:8px 9px;font-size:12px}.pneumonia-drawer-facts small{font-size:10px}.pneumonia-drawer-timeline{gap:8px}.pneumonia-drawer-timeline article{border-radius:15px;padding:12px}.pneumonia-drawer-timeline article>p{margin-bottom:6px;font-size:12px}.pneumonia-drawer-timeline h4{font-size:15px}.pneumonia-drawer-timeline span,.pneumonia-drawer-timeline li{font-size:12px;line-height:1.5}.pneumonia-question-card{border-radius:22px;padding:19px 16px}.pneumonia-overline{margin-bottom:7px;font-size:13px}.pneumonia-question-card h2{font-size:23px}.pneumonia-question-prompt{margin:8px 0 15px;font-size:14px;line-height:1.55}.pneumonia-option-stack{gap:9px}.pneumonia-option{border-radius:15px;grid-template-columns:36px minmax(0,1fr) 14px;gap:9px;min-height:58px;padding:9px 11px}.pneumonia-option>span{width:34px;height:34px;font-size:20px}.pneumonia-option>b{font-size:15px;line-height:1.35}.pneumonia-option>i{font-size:25px}.pneumonia-answer-feedback{border-radius:15px;margin-top:13px;padding:13px 14px}.pneumonia-answer-feedback strong{font-size:18px}.pneumonia-answer-feedback p{font-size:14px;line-height:1.55}.pneumonia-unlock-stack{gap:9px;margin-top:12px}.pneumonia-unlock-card{border-radius:16px;padding:13px}.pneumonia-unlock-card h3{font-size:18px}.pneumonia-unlock-card p,.pneumonia-unlock-card li,.pneumonia-detail-card p{font-size:14px;line-height:1.55}.pneumonia-detail-card button{min-height:48px;padding:0 13px;font-size:15px}.case-context-card{border-radius:16px;gap:8px;margin-bottom:16px;padding:13px}.case-context-card h3{font-size:17px}.case-context-card p,.case-context-card li,.pneumonia-detail-content li{font-size:14px;line-height:1.55}.pneumonia-detail-content{padding:0 13px 13px}.pneumonia-action-bar{padding:9px 16px max(9px, env(safe-area-inset-bottom));gap:9px}.pneumonia-action-bar button{min-height:46px;font-size:16px}.pneumonia-primary-action span{font-size:25px}.pneumonia-complete-hero{min-height:268px}.pneumonia-complete-title{margin-top:31px}.pneumonia-complete-title>span{width:42px;height:42px;font-size:24px}.pneumonia-complete-title p{margin-top:10px;font-size:15px}.pneumonia-complete-title h1{font-size:27px}.pneumonia-completion-card{border-radius:22px;padding:20px}.pneumonia-completion-card h2{font-size:23px}.pneumonia-reasoning-chain{gap:6px;margin-top:17px}.pneumonia-reasoning-chain span{gap:6px;font-size:14px}}@media (height<=700px) and (width>=561px){.home-header{padding-top:24px}.carousel{min-height:355px}.home-footer-copy{padding-top:15px}}@media (width>=640px){.course-hero{min-height:430px}.course-title-group{margin-top:90px}.course-dashboard{margin-top:-24px}.recent-case{grid-template-columns:112px minmax(0,1fr) auto;align-items:center;padding-bottom:14px}.recent-case>img{width:112px;height:124px}.continue-study{position:static}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.interview-page{--interview-surface:#fafdfef0;min-height:100dvh;padding-bottom:calc(150px + env(safe-area-inset-bottom));background:#eaf4f8;position:relative;overflow-x:clip}.interview-background{z-index:0;object-fit:cover;opacity:.32;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.interview-page:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(#f2fafdc7,#e8f6fbeb);position:fixed;inset:0}.interview-header{z-index:20;padding:max(12px, calc(env(safe-area-inset-top) + 8px)) max(16px, env(safe-area-inset-right)) 12px max(16px, env(safe-area-inset-left));background:#f1f9fcf7;border-bottom:1px solid #4f84a021;position:sticky;top:0;box-shadow:0 8px 22px #2e5d7714}.interview-header-row,.interview-progress-row{width:min(100%,760px);margin:0 auto}.interview-header-row{grid-template-columns:72px minmax(0,1fr) 52px;align-items:center;gap:8px;display:grid}.interview-back,.interview-info-button{color:#225a7d;cursor:pointer;border:0;min-height:44px}.interview-back{font-family:var(--title-font);background:0 0;align-items:center;padding:0;font-size:16px;display:inline-flex}.interview-back span{margin:-3px 5px 0 0;font-family:Georgia,serif;font-size:39px;line-height:.6}.interview-heading{text-align:center;min-width:0}.interview-heading small{color:#7090a4;letter-spacing:.08em;font-size:11px}.interview-heading h1{color:#163f60;font-family:var(--title-font);letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:20px;font-weight:700;line-height:1.2;overflow:hidden}.interview-info-button{background:#ffffffb3;border:1px solid #3374972e;border-radius:16px;place-items:center;width:48px;padding:0;display:grid;position:relative;box-shadow:inset 0 1px #fff}.interview-info-button span{font-size:22px}.interview-info-button b{color:#fff;background:#347fa8;border:2px solid #edf7fa;border-radius:10px;place-items:center;min-width:20px;height:20px;padding:0 5px;font:11px/1 Georgia,serif;display:grid;position:absolute;top:-6px;right:-5px}.interview-back:active,.interview-info-button:active{transform:scale(.96)}.interview-back:focus-visible,.interview-info-button:focus-visible{outline-offset:2px;outline:3px solid #348ebe40}.interview-progress-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px;margin-top:9px;display:grid}.interview-progress-track{background:#d7e5eb;border-radius:5px;height:7px;overflow:hidden}.interview-progress-track i{border-radius:inherit;background:linear-gradient(90deg,#2477a4,#5ab1cf);height:100%;transition:width .24s;display:block;box-shadow:0 0 9px #3893b961}.interview-progress-row b{color:#246586;font:13px/1 Georgia,serif}.interview-progress-row small{color:#6c899d;text-align:right;min-width:52px;font-size:11px}.interview-chat-shell,.interview-diagnosis-content,.interview-review-content{z-index:1;width:min(100%,760px);margin:0 auto;padding:16px;position:relative}.interview-patient-strip{background:var(--interview-surface);border:1px solid #ffffffeb;border-radius:22px;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid;box-shadow:0 10px 24px #37637b17,inset 0 1px #fff}.interview-patient-strip img{object-fit:cover;object-position:center 28%;border-radius:18px;width:76px;height:76px}.interview-patient-strip small{color:#6c8a9e;letter-spacing:.05em;font-size:11px}.interview-patient-strip h2{color:#194e70;font-family:var(--title-font);margin:3px 0;font-size:22px}.interview-patient-strip p{color:#5b7a8f;margin:0;font-size:12px;line-height:1.4}.interview-patient-strip>span{color:#916c48;text-align:center;background:#f5ece2;border-radius:12px;padding:6px 8px;font-size:11px;line-height:1.35}.interview-storage-warning,.interview-opening-note{color:#5c7c91;text-align:center;border-radius:14px;margin:12px 0 0;padding:10px 12px;font-size:12px;line-height:1.5}.interview-storage-warning{color:#846c48;background:#fff9ede0;border:1px solid #bf9a5847}.interview-opening-note{background:#e6f3f9c2}.interview-thread{gap:12px;padding:4px 2px 16px;display:grid}.interview-message{align-items:flex-end;gap:8px;max-width:86%;animation:.18s ease-out both interview-message-in;display:flex}.interview-message>div{background:#fcfefff0;border:1px solid #ffffffe0;border-radius:18px 18px 18px 6px;padding:10px 13px;box-shadow:0 7px 17px #325f7814,inset 0 1px #fff}.interview-message p{color:#315f7c;overflow-wrap:anywhere;white-space:pre-line;margin:3px 0 0;font-size:15px;line-height:1.55}.interview-avatar{color:#2a6a8e;width:34px;height:34px;font-family:var(--title-font);background:linear-gradient(145deg,#d4e9f3,#f8fcfd);border-radius:50%;flex:none;place-items:center;font-size:16px;display:grid;box-shadow:0 5px 12px #3968801f}.interview-message.is-student{flex-direction:row-reverse;justify-self:end}.interview-message.is-student>div{background:linear-gradient(135deg,#dceff7,#c9e5f2);border-color:#3f8eb538;border-radius:18px 18px 6px}.interview-message.is-student small{text-align:right;display:block}.interview-message.is-system{justify-self:center;max-width:92%}.interview-message.is-system>div{box-shadow:none;background:#deedf4bf;border:0;border-radius:14px}.interview-message.is-system small{display:none}.interview-message.is-system p{color:#648397;text-align:center;margin:0;font-size:12px}.interview-hint{background:#fffaeff2;border:1px solid #bf9a5847;border-radius:18px;grid-template-columns:38px minmax(0,1fr);gap:10px;margin:0 2px 12px;padding:12px;animation:.18s ease-out both interview-message-in;display:grid;box-shadow:0 8px 18px #65523114}.interview-hint>span{color:#fff;background:#dfc796;border-radius:50%;place-items:center;width:36px;height:36px;font:22px/1 Georgia,serif;display:grid}.interview-hint b{color:#775d34;font-family:var(--title-font);font-size:15px}.interview-hint p{color:#7a684b;margin:3px 0 0;font-size:13px;line-height:1.5}.interview-composer{z-index:18;width:min(100%,760px);padding:10px max(16px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));background:#f1f9fcfa;border:1px solid #ffffffe6;border-bottom:0;border-radius:24px 24px 0 0;position:fixed;bottom:0;right:50%;transform:translate(50%);box-shadow:0 -10px 28px #2c5b7421}.interview-composer-tools{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.interview-composer-tools button{color:#3e708e;cursor:pointer;background:0 0;border:0;min-height:36px;padding:0 10px;font-size:13px}.interview-composer-tools button:first-child{background:#dbedf5b8;border-radius:12px}.interview-composer-tools span{color:#b48a49;margin-right:5px}.interview-input-row{grid-template-columns:minmax(0,1fr) 58px;align-items:end;gap:8px;display:grid}.interview-input-row textarea,.interview-diagnosis-form textarea{color:#214f6e;width:100%;font-family:var(--ui-font);background:#ffffffeb;border:1px solid #397b9e33;outline:none;font-size:16px;box-shadow:inset 0 1px 4px #325e760d}.interview-input-row textarea{resize:none;border-radius:17px;min-height:50px;max-height:112px;padding:13px 14px;line-height:1.45}.interview-input-row textarea:focus,.interview-diagnosis-form textarea:focus{border-color:#4795bc;box-shadow:0 0 0 3px #3a91bc1f}.interview-input-row>button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#1f719f,#55a8c8);border:0;border-radius:17px;min-width:58px;min-height:50px;padding:0 10px;font-size:15px;box-shadow:0 7px 15px #28779e33,inset 0 1px #ffffff59}.interview-input-row>button:active,.interview-composer-tools button:active{transform:scale(.96)}.interview-form-error{color:#b04c49;margin:7px 2px 0;font-size:12px;line-height:1.45}.interview-diagnosis-page,.interview-review-page{padding-bottom:calc(32px + env(safe-area-inset-bottom))}.interview-diagnosis-content,.interview-review-content{gap:16px;padding-top:20px;padding-bottom:32px;display:grid}.interview-diagnosis-intro,.interview-diagnosis-form,.interview-review-card,.interview-reasoning-card,.interview-result-card{background:var(--interview-surface);border:1px solid #ffffffeb;border-radius:24px;box-shadow:0 11px 26px #34617917,inset 0 1px #fff}.interview-diagnosis-intro,.interview-diagnosis-form,.interview-review-card,.interview-reasoning-card{padding:20px}.interview-section-heading{align-items:center;gap:11px;display:flex}.interview-section-heading>span{color:#2d7298;width:42px;height:42px;font-family:var(--title-font);background:linear-gradient(145deg,#d7eaf3,#f6fbfd);border-radius:14px;flex:none;place-items:center;font-size:18px;display:grid}.interview-section-heading small{color:#7894a5;letter-spacing:.08em;font-size:11px}.interview-section-heading h2{color:#194d70;font-family:var(--title-font);letter-spacing:.04em;margin:2px 0 0;font-size:22px}.interview-diagnosis-intro>p{color:#5c7b90;margin:14px 0 0;font-size:14px;line-height:1.65}.interview-diagnosis-summary{background:#e1f1f8b8;border-radius:18px;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:13px;margin-top:16px;padding:10px;display:grid}.interview-diagnosis-summary img{object-fit:cover;object-position:center 28%;border-radius:15px;width:76px;height:76px}.interview-diagnosis-summary div{gap:5px;display:grid}.interview-diagnosis-summary b{color:#285f80;font-family:var(--title-font);font-size:17px}.interview-diagnosis-summary span{color:#6a879a;font-size:12px}.interview-clue-chips{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.interview-clue-chips span{color:#47748e;background:#f7fcfee0;border:1px solid #3d84a824;border-radius:14px;padding:6px 10px;font-size:12px}.interview-diagnosis-form{position:relative}.interview-diagnosis-form>label{color:#245a7c;font-family:var(--title-font);margin-bottom:9px;font-size:17px;display:block}.interview-diagnosis-form textarea{resize:vertical;border-radius:17px;min-height:118px;padding:14px;line-height:1.6}.interview-diagnosis-form>small{color:#7c96a6;text-align:right;margin-top:6px;font-size:11px;display:block}.interview-diagnosis-form>div{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.interview-diagnosis-form button,.interview-review-actions button{min-height:48px;font-family:var(--title-font);cursor:pointer;border-radius:24px;font-size:16px}.interview-diagnosis-form button:first-child,.interview-review-actions button:first-child{color:#2b6384;background:#ffffffb3;border:1px solid #4b8db3}.interview-diagnosis-form button:last-child{color:#fff;background:linear-gradient(135deg,#1e719e,#53a9ca);border:0}.interview-result-card{padding:24px 22px 22px 76px;position:relative;overflow:hidden}.interview-result-card>span{color:#fff;background:#3b9882;border-radius:50%;place-items:center;width:42px;height:42px;font-size:24px;display:grid;position:absolute;top:24px;left:20px}.interview-result-card.is-partial>span{background:#c39752}.interview-result-card.is-incorrect>span{background:#b96b67}.interview-result-card>small{color:#7592a4;letter-spacing:.08em;font-size:11px}.interview-result-card h2{color:#174d70;font-family:var(--title-font);margin:4px 0 12px;font-size:24px;line-height:1.35}.interview-result-card h3{color:#33745f;font-family:var(--title-font);margin:0;font-size:18px}.interview-result-card.is-partial h3{color:#8b682f}.interview-result-card.is-incorrect h3{color:#9f4e4c}.interview-result-card p{color:#56778c;margin:6px 0 0;font-size:14px;line-height:1.6}.interview-review-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.interview-review-grid article{text-align:center;background:#f9fdfee6;border:1px solid #ffffffe6;border-radius:18px;gap:7px;padding:14px 10px;display:grid}.interview-review-grid small{color:#7290a3;font-size:11px}.interview-review-grid strong{color:#236487;font:25px/1 Georgia,serif}.interview-review-grid em{color:#6b899c;font-family:var(--ui-font);font-size:11px;font-style:normal;font-weight:400}.interview-missed-list{gap:9px;margin-top:16px;display:grid}.interview-missed-list article{background:#fff8ebcc;border-left:3px solid #c69a55;border-radius:5px 14px 14px 5px;padding:11px 13px}.interview-missed-list b{color:#795d31;font-family:var(--title-font);font-size:15px}.interview-missed-list p{color:#776a53;margin:4px 0 0;font-size:12px;line-height:1.5}.interview-empty-note{color:#4e816e;margin:16px 0 0;font-size:14px}.interview-review-group{margin-top:16px}.interview-review-group+.interview-review-group{border-top:1px solid #4278951f;padding-top:14px}.interview-review-group h3{color:#34759a;font-family:var(--title-font);margin:0 0 8px;font-size:17px}.interview-review-group p{color:#5c7b90;grid-template-columns:86px minmax(0,1fr);gap:10px;margin:7px 0 0;font-size:13px;line-height:1.55;display:grid}.interview-review-group b{color:#315f7d;font-weight:600}.interview-reasoning-card>small{color:#7692a3;letter-spacing:.1em;font-size:11px}.interview-reasoning-card>p{text-align:center;gap:8px;margin:12px 0 0;display:grid}.interview-reasoning-card span,.interview-reasoning-card strong{color:#315f7c;font-family:var(--title-font);background:#e2f1f8cc;border-radius:14px;padding:10px;font-size:15px;font-weight:400}.interview-reasoning-card i{color:#5c9cba;font:20px/1 Georgia,serif}.interview-reasoning-card strong{color:#28725e;background:linear-gradient(135deg,#d7ede7,#edf8f4);font-size:17px}.interview-disclaimer{color:#6e899a;text-align:center;margin:0;font-size:11px;line-height:1.55}.interview-review-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.interview-review-actions button:last-child{color:#8b6042;background:#fff7f0d1;border:1px solid #b27c5361}.interview-drawer{z-index:50;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.interview-drawer-backdrop{cursor:pointer;background:#1239504d;border:0;position:absolute;inset:0}.interview-drawer-panel{width:min(100%,680px);max-height:min(82dvh,760px);padding:22px 18px calc(24px + env(safe-area-inset-bottom));background:linear-gradient(155deg,#fefffffc,#e2f2f9fc);border:1px solid #ffffffeb;border-bottom:0;border-radius:28px 28px 0 0;animation:.22s cubic-bezier(.22,.8,.28,1) both interview-drawer-in;position:relative;overflow-y:auto;box-shadow:0 -18px 48px #1a4e6b38}.interview-drawer-panel>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.interview-drawer-panel>header small{color:#7894a6;letter-spacing:.09em;font-size:11px}.interview-drawer-panel>header h2{color:#174d70;font-family:var(--title-font);margin:2px 0 0;font-size:25px}.interview-drawer-panel>header button{color:#347398;cursor:pointer;background:#ffffffbf;border:1px solid #3d7ea033;border-radius:50%;place-items:center;width:44px;height:44px;font:28px/1 Georgia,serif;display:grid}.interview-drawer-patient{background:#ffffffa3;border-radius:17px;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:11px;margin-top:16px;padding:9px;display:grid}.interview-drawer-patient img{object-fit:cover;object-position:center 28%;border-radius:12px;width:64px;height:58px}.interview-drawer-patient p{gap:4px;margin:0;display:grid}.interview-drawer-patient strong{color:#245e81;font-family:var(--title-font);font-size:17px}.interview-drawer-patient span{color:#6b889a;font-size:12px}.interview-info-group{margin-top:18px}.interview-info-group h3{color:#2a688d;font-family:var(--title-font);margin:0 0 9px;font-size:18px}.interview-info-group article{background:#ffffffb8;border-radius:14px;padding:11px 12px}.interview-info-group article+article{margin-top:7px}.interview-info-group b{color:#366784;font-size:13px}.interview-info-group p{color:#5e7c8f;margin:4px 0 0;font-size:13px;line-height:1.55}@keyframes interview-message-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes interview-drawer-in{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@media (width<=560px){.interview-header{padding-left:12px;padding-right:12px}.interview-heading h1{font-size:18px}.interview-chat-shell,.interview-diagnosis-content,.interview-review-content{padding:12px}.interview-patient-strip{border-radius:19px;grid-template-columns:62px minmax(0,1fr) auto;gap:9px;padding:10px}.interview-patient-strip img{border-radius:15px;width:62px;height:66px}.interview-patient-strip h2{font-size:19px}.interview-patient-strip p{font-size:11px}.interview-message{max-width:91%}.interview-message p{font-size:14px}.interview-composer{border-radius:21px 21px 0 0;padding-left:12px;padding-right:12px}.interview-diagnosis-intro,.interview-diagnosis-form,.interview-review-card,.interview-reasoning-card{border-radius:21px;padding:16px}.interview-section-heading h2{font-size:20px}.interview-result-card{border-radius:21px;padding:20px 17px 19px 68px}.interview-result-card>span{top:20px;left:16px}.interview-result-card h2{font-size:21px}.interview-review-group p{grid-template-columns:74px minmax(0,1fr);gap:8px;font-size:12px}.interview-drawer-panel{border-radius:25px 25px 0 0;padding-left:16px;padding-right:16px}}@media (prefers-reduced-motion:reduce){.interview-message,.interview-hint,.interview-drawer-panel{animation:none}.interview-progress-track i,.interview-back,.interview-info-button,.interview-input-row>button,.interview-composer-tools button{transition:none}}.clinical-sign-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.clinical-sign-card{color:#245d82;text-align:left;cursor:pointer;background:#ffffffc7;border:1px solid #4a88a933;border-radius:16px;padding:0;transition:transform .16s,border-color .16s;overflow:hidden;box-shadow:0 7px 16px #36698514}.clinical-sign-card:hover,.clinical-sign-card:focus-visible{border-color:#2d93ce9e;outline:3px solid #4a9dcc1f;transform:translateY(-1px)}.clinical-sign-card:active{transform:scale(.98)}.clinical-sign-card>img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.clinical-sign-card:only-child{grid-column:1/-1}.clinical-sign-card:only-child>img{object-fit:contain;background:#101416}.clinical-sign-card>span{justify-content:space-between;align-items:center;gap:8px;min-height:48px;padding:8px 11px;display:flex}.clinical-sign-card strong{color:#245d82;font-family:var(--title-font);font-size:16px}.clinical-sign-card small{color:#7290a3;white-space:nowrap;font-size:11px}.clinical-sign-preview{z-index:60;padding:max(20px, env(safe-area-inset-top)) 16px max(20px, env(safe-area-inset-bottom));place-items:center;display:grid;position:fixed;inset:0}.clinical-sign-preview-backdrop{cursor:pointer;background:#0c2b3d99;border:0;position:absolute;inset:0}.clinical-sign-preview>section{background:#f5fbfd;border:1px solid #ffffffe6;border-radius:22px;width:min(100%,760px);max-height:92dvh;position:relative;overflow:auto;box-shadow:0 24px 60px #08283b57}.clinical-sign-preview header{justify-content:space-between;align-items:center;min-height:56px;padding:6px 8px 6px 18px;display:flex}.clinical-sign-preview h2{color:#1d567b;font-family:var(--title-font);margin:0;font-size:21px}.clinical-sign-preview header button{color:#225d80;cursor:pointer;background:#ddf0f8e6;border:0;border-radius:50%;width:44px;height:44px;font-size:28px}.clinical-sign-preview>section>img{object-fit:contain;background:#fff;width:100%;height:auto;max-height:calc(92dvh - 56px);display:block}@media (width<=560px){.clinical-sign-grid{gap:8px;margin-top:12px}.clinical-sign-card{border-radius:14px}.clinical-sign-card>span{min-height:44px;padding:7px 9px}.clinical-sign-card strong{font-size:14px}.clinical-sign-card small{font-size:9px}.clinical-sign-preview{padding-left:12px;padding-right:12px}.clinical-sign-preview>section{border-radius:18px}}@media (prefers-reduced-motion:reduce){.clinical-sign-card{transition:none}}html{scroll-padding-bottom:100px}button,a,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #337daa}.course-page,.case-list-page,.pneumonia-case-page{background:#f1f6f8}.bottom-nav{min-height:76px;padding:10px 16px max(10px, env(safe-area-inset-bottom));-webkit-backdrop-filter:none;backdrop-filter:none;background:#f9fcfd;border-radius:20px 20px 0 0;box-shadow:0 -3px 16px #173f5f08}.nav-item{color:#506d80;gap:3px;min-height:48px;font-size:12px}.nav-item>span{font-size:25px}.nav-item.is-active:after{width:24px;height:2px;bottom:-5px}.nav-item.is-unavailable{color:#8094a1;position:relative}.nav-item>small{background:#edf1f3;border-radius:5px;padding:1px 4px;font-size:9px;position:absolute;top:-6px;right:-3px}.course-back{font-family:var(--ui-font);font-size:16px}.course-count{color:#456c83;background:#ffffffad;border-radius:7px;padding:5px 9px;font-size:12px}.course-hero{min-height:250px}.course-title-group{margin-top:40px;padding:0 24px}.course-title-group h1{font-size:56px}.course-title-group>p:last-child{letter-spacing:.06em;margin-top:14px;font-size:16px}.course-motto{font-size:13px;top:-20px;right:24px}.course-dashboard{max-width:820px;box-shadow:none;background:#f1f6f8;border:0;border-radius:24px 24px 0 0;margin-top:-14px;padding:20px 16px 28px}.study-resume{color:var(--ink);background:#fafdff;border:1px solid #c7dce7;border-radius:18px;grid-template-columns:60px minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;text-decoration:none;display:grid}.study-resume:not(:has(img)){grid-template-columns:minmax(0,1fr) auto}.study-resume>img{object-fit:cover;border-radius:12px;width:60px;height:66px}.study-resume>div{gap:5px;min-width:0;display:grid}.study-resume small{color:#517486;font-size:12px}.study-resume strong{font-size:17px;line-height:1.45}.study-resume>div>span{color:#537083;font-size:12px;line-height:1.5}.study-resume>b{color:#25698f;white-space:nowrap;font-size:13px}.study-resume:hover{background:#eef7fb}.course-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}.course-action-card{min-height:128px;box-shadow:none;border:1px solid #dce7ec;border-radius:16px;padding:16px 13px}.course-action-card:first-child{border-color:#86b5cf}.course-action-card>img{opacity:.65;width:86px;height:86px;top:0;right:-7px}.course-card-copy{gap:6px}.course-card-copy strong{font-family:var(--ui-font);font-size:17px}.course-card-copy small{color:#517181;font-size:12px}.course-card-arrow{display:none}.feature-soon{color:#718794;font-size:10px;position:absolute;top:11px;left:12px}.learning-progress{box-shadow:none;background:#fff;border:1px solid #dee8ed;border-radius:18px;margin-top:20px;padding:18px}.learning-progress h2{font-family:var(--ui-font);letter-spacing:0;font-size:18px}.progress-summary{grid-template-columns:80px minmax(0,1fr);gap:16px}.progress-ring{width:80px}.progress-ring:before{inset:7px}.progress-ring strong{font-family:var(--ui-font);font-size:22px}.progress-ring span{font-family:var(--ui-font);font-size:11px}.progress-detail p{font-family:var(--ui-font);letter-spacing:0;font-size:15px}.progress-detail .progress-caption{color:#5c7485;font-size:12px;line-height:1.6}.progress-track{height:6px;margin:10px 0}.home-page{grid-template-rows:auto minmax(280px,1fr) auto auto}.home-header{padding:24px 24px 0}.carousel{min-height:clamp(280px,78vw,430px)}.home-footer-copy{padding:12px 16px calc(104px + env(safe-area-inset-bottom));gap:12px}.home-footer-copy .study-resume{text-align:left;letter-spacing:0;width:min(100%,560px)}.home-footer-copy .study-resume span{font-family:var(--ui-font);letter-spacing:0;opacity:1}.home-footer-copy>p{font-size:15px}.case-list-hero{min-height:190px}.case-list-title-group{margin-top:22px;padding:0 24px}.case-list-title-group h1{font-size:40px}.case-list-title-group>p{letter-spacing:.04em;margin-top:12px;font-size:15px}.case-list-title-group h1 sup{width:24px;height:30px;font-size:12px}.case-list-content{max-width:820px;box-shadow:none;background:#f1f6f8;padding:16px}.case-category-row{gap:6px}.case-category-row button{min-height:44px;box-shadow:none;font-family:var(--ui-font);border-radius:22px;padding:0 12px;font-size:14px}.case-category-row button.is-active{box-shadow:none;background:#246e98}.case-summary-row{box-shadow:none;background:0 0;border-radius:0;margin:8px 0 14px;padding:6px 2px}.case-summary-row p{font-family:var(--ui-font);letter-spacing:0;white-space:normal;flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:14px;display:flex}.case-summary-row p span{color:#5c7485;font-family:var(--ui-font);margin:0;font-size:12px}.case-study-card{background:#fff;border:1px solid #dce6eb;border-radius:18px;grid-template-columns:76px minmax(0,1fr);align-items:start;gap:12px;min-height:0;padding:16px;box-shadow:0 3px 10px #173f5f04}.case-study-card:after{display:none}.case-study-card>img{border-radius:12px;width:76px;height:92px}.case-study-main{padding:0}.case-category-badge{font-family:var(--ui-font);color:#406a80;background:#edf5f8;border-radius:5px;padding:3px 8px;font-size:11px}.case-study-main h2{font-family:var(--ui-font);letter-spacing:0;margin:8px 0 6px;font-size:18px;line-height:1.4}.case-study-main p{font-family:var(--ui-font);color:#526d7e;font-size:14px;line-height:1.6}.case-progress{font-family:var(--ui-font);gap:10px;margin-top:10px;font-size:12px}.case-progress>span{width:100%;height:5px}.case-study-actions{grid-area:3/1/auto/-1;grid-template-columns:1fr 1fr;gap:12px}.case-study-action,.case-study-restart{min-height:46px;font-family:var(--ui-font);box-shadow:none;border-radius:10px;font-size:15px}.case-study-action{background:#27759e}.case-study-restart{color:#45697e;background:#f7fafb;border-color:#d9e5eb}.case-study-card footer{font-family:var(--ui-font);color:#577180;grid-row:2;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding-top:10px;font-size:12px}.case-study-card footer span{white-space:normal}.pneumonia-case-hero.is-learning{z-index:15;min-height:0;padding:max(8px, env(safe-area-inset-top)) 16px 12px;background:#f3f9fb;border-bottom:1px solid #dce8ee;position:sticky;top:0}.is-learning .pneumonia-case-hero-art{opacity:.12}.is-learning .pneumonia-case-hero-wash{display:none}.learning-toolbar{grid-template-columns:36px minmax(0,1fr) 62px;align-items:center;gap:8px;width:min(100%,728px);margin:auto;display:grid;position:relative}.learning-toolbar .course-back{justify-content:center;min-width:36px;min-height:44px}.learning-toolbar .course-back span{margin-right:0}.learning-toolbar small{color:#547183;font-size:11px}.learning-toolbar h1{font:600 17px/1.4 var(--ui-font);overflow-wrap:anywhere;margin:3px 0 0}.learning-toolbar .pneumonia-info-trigger{width:62px;min-width:0;min-height:46px;box-shadow:none;background:#fff;border-radius:10px;grid-template-columns:1fr;justify-items:center;gap:2px;padding:4px;display:grid}.learning-toolbar .pneumonia-info-trigger>span{grid-row:auto;font-size:19px}.learning-toolbar .pneumonia-info-trigger small{font:11px/1.2 var(--ui-font)}.is-learning .pneumonia-progress{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;width:min(100%,728px);margin-top:10px;padding:0}.is-learning .pneumonia-progress>span{height:5px;box-shadow:none}.is-learning .pneumonia-progress b{font:12px/1 var(--ui-font)}.is-learning .pneumonia-progress p{font:12px/1.5 var(--ui-font);letter-spacing:0;margin:0}.pneumonia-case-content{gap:16px;max-width:760px;margin-top:0;padding:16px 16px 28px}.pneumonia-patient-card,.pneumonia-info-card,.pneumonia-question-card,.pneumonia-completion-card{box-shadow:none;background:#fff;border:1px solid #dce7ed;border-radius:18px}.pneumonia-patient-card{grid-template-columns:76px minmax(0,1fr);gap:12px;padding:16px}.pneumonia-patient-card>img{border-radius:12px;width:76px;height:100px}.pneumonia-patient-card h2{font:600 18px/1.5 var(--ui-font);letter-spacing:0}.pneumonia-patient-card>div>p{font:14px/1.6 var(--ui-font)}.pneumonia-case-badge{font:11px/1.5 var(--ui-font);overflow-wrap:anywhere}.pneumonia-patient-card dl{grid-template-columns:1fr 1fr;gap:8px}.pneumonia-patient-card dl div:last-child{grid-column:1/-1}.pneumonia-patient-card dl div+div{border-left:0;padding-left:0}.pneumonia-patient-card dt{font-size:12px}.pneumonia-patient-card dd{font:14px/1.5 var(--ui-font)}.pneumonia-info-card{padding:16px}.pneumonia-info-card h2{font:600 17px/1.5 var(--ui-font);letter-spacing:0}.pneumonia-fact-grid small{color:#5e7786;font-size:12px}.pneumonia-fact-grid strong{font:500 15px/1.5 var(--ui-font)}.pneumonia-fact-grid>div{background:#f0f7fa;border-radius:10px}.pneumonia-question-card{padding:20px 16px;animation:none}.pneumonia-overline{font:13px/1.5 var(--ui-font);letter-spacing:0}.pneumonia-question-card h2{font:600 21px/1.55 var(--ui-font);letter-spacing:0}.pneumonia-question-prompt{font:14px/1.6 var(--ui-font);color:#557183}.pneumonia-option{min-height:60px;box-shadow:none;background:#fafcfd;border:1px solid #d9e5eb;border-radius:12px;grid-template-columns:30px minmax(0,1fr);gap:10px;padding:13px 12px}.pneumonia-option>span{width:28px;height:28px;font:500 16px/1 var(--ui-font);background:#e6eff4;border-radius:8px}.pneumonia-option>b{font:400 16px/1.65 var(--ui-font);color:#23475e}.pneumonia-option>i{display:none}.pneumonia-option.is-selected{background:#edf6fc;border-color:#347fab;box-shadow:inset 0 0 0 1px #347fab}.pneumonia-option.is-wrong{box-shadow:none;background:#fff4f2;border-color:#c07068}.pneumonia-option.is-correct{box-shadow:none;background:#eff8f4;border-color:#428b75}.pneumonia-answer-feedback{border-radius:12px;padding:16px;scroll-margin-top:152px;animation:none}.pneumonia-answer-feedback strong{font:600 17px/1.5 var(--ui-font)}.pneumonia-answer-feedback p,.pneumonia-unlock-card p,.pneumonia-unlock-card li,.pneumonia-detail-content p,.pneumonia-detail-content li,.case-context-card p,.case-context-card li,.pneumonia-reasoning-chain span{font:400 16px/1.75 var(--ui-font);color:#35566c}.pneumonia-unlock-card,.pneumonia-detail-card,.case-context-card{background:#f1f6f9;border:0;border-radius:12px}.pneumonia-unlock-card h3,.case-context-card h3{font:600 17px/1.5 var(--ui-font);letter-spacing:0}.pneumonia-detail-card button{min-height:48px;font:500 15px/1.5 var(--ui-font);padding:12px}.pneumonia-action-bar{padding:10px max(16px, calc((100vw - 728px) / 2)) max(10px, env(safe-area-inset-bottom));-webkit-backdrop-filter:none;backdrop-filter:none;background:#f9fcfd;border-top:1px solid #dce8ee;gap:12px;box-shadow:0 -3px 12px #173f5f08}.pneumonia-action-bar button{min-height:48px;font:500 15px/1.4 var(--ui-font);border-radius:12px}.pneumonia-primary-action{box-shadow:none;background:#26749f}.pneumonia-secondary-action{background:#fff;border-color:#cadce6}.study-storage-warning{z-index:2;color:#765521;font:14px/1.6 var(--ui-font);background:#fff8e9;border:1px solid #e6c698;border-radius:10px;margin:0;padding:12px 16px;position:relative}.study-dialog{width:100%;max-width:none;height:100%;max-height:none;color:var(--ink);background:0 0;border:0;margin:0;padding:0}.study-dialog:not([open]){display:none}.study-dialog::backdrop{background:0 0}.pneumonia-info-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}.pneumonia-info-panel,.interview-drawer-panel{max-height:86dvh;padding:18px 16px calc(24px + env(safe-area-inset-bottom));background:#f7fbfd;border-radius:22px 22px 0 0}.pneumonia-info-panel>header,.interview-drawer-panel>header,.clinical-sign-preview header{z-index:2;background:#f7fbfd;padding:8px 0 12px;position:sticky;top:-18px}.pneumonia-info-panel>header h2,.interview-drawer-panel>header h2{font:600 22px/1.4 var(--ui-font);letter-spacing:0}.pneumonia-info-panel>header button{width:44px;height:44px}.pneumonia-drawer-profile strong{font:600 16px/1.5 var(--ui-font)}.pneumonia-drawer-profile p{font:14px/1.6 var(--ui-font)}.pneumonia-drawer-facts h3,.pneumonia-drawer-timeline h3{font:600 16px/1.5 var(--ui-font);letter-spacing:0}.pneumonia-drawer-facts span{font:14px/1.6 var(--ui-font)}.pneumonia-drawer-facts small{font-size:12px}.pneumonia-drawer-timeline>details{background:#fff;border:1px solid #dce7ed;border-radius:12px;padding:0 14px 14px}.pneumonia-drawer-timeline>details:not([open]){padding-bottom:0}.pneumonia-drawer-timeline summary{cursor:pointer;min-height:48px;padding:14px 0;font-size:14px;font-weight:600}.pneumonia-drawer-timeline details>div+div{border-top:1px solid #e4edf1;margin-top:12px;padding-top:12px}.pneumonia-drawer-timeline h4{font:600 15px/1.5 var(--ui-font)}.pneumonia-drawer-timeline span,.pneumonia-drawer-timeline li{font:14px/1.7 var(--ui-font);color:#405f72}.clinical-sign-preview.study-dialog{padding:16px}.clinical-sign-preview header{padding:8px 12px;top:0}.clinical-sign-card>img{object-fit:contain}.clinical-sign-card>span{flex-wrap:wrap}.clinical-sign-card small{font-size:12px}.interview-page.is-chat{flex-direction:column;height:100dvh;min-height:0;padding-bottom:0;display:flex;overflow:hidden}.is-chat .interview-header{box-shadow:none;flex-shrink:0}.is-chat .interview-chat-shell{overscroll-behavior-y:contain;flex:1;min-height:0;padding:16px;overflow-y:auto}.is-chat .interview-composer{box-shadow:none;border-top:1px solid #dce8ee;border-radius:0;flex-shrink:0;margin:0 auto;position:relative;right:auto;transform:none}.interview-heading h1{font-family:var(--ui-font);white-space:normal;letter-spacing:0;font-size:16px;line-height:1.4}.interview-patient-strip{box-shadow:none;border-radius:14px;grid-template-columns:48px minmax(0,1fr) auto;padding:10px}.interview-patient-strip img{border-radius:10px;width:48px;height:56px}.interview-patient-strip h2{font:600 17px/1.4 var(--ui-font)}.interview-patient-strip p,.interview-patient-strip small{font-size:12px}.interview-message>div{box-shadow:none;border-color:#dce7ed}.interview-message p{color:#23475e;font-size:16px;line-height:1.7}.interview-message small{color:#5a7586;font-size:12px}.interview-message.is-student>div{background:#deedf6}.interview-composer-tools button{min-height:44px;font-size:14px}.interview-input-row textarea{border-radius:12px}.interview-input-row>button{box-shadow:none;background:#27759e;border-radius:12px}.interview-info-group p{color:#405f72;font-size:15px;line-height:1.7}.interview-info-group b{font-size:14px}@media (width>=640px){.course-title-group,.case-list-title-group{max-width:820px}.course-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.course-action-card{min-height:144px}.case-study-card{grid-template-columns:100px minmax(0,1fr)}.case-study-card>img{width:100px;height:110px}.case-study-main h2{font-size:20px}.pneumonia-question-card{padding:24px}}@media (width<=360px){.study-resume{grid-template-columns:44px minmax(0,1fr) auto;gap:8px;padding:12px}.study-resume>img{width:44px;height:54px}.study-resume strong{font-size:15px}.study-resume>b{font-size:12px}.case-study-card{grid-template-columns:60px minmax(0,1fr);padding:12px}.case-study-card>img{width:60px;height:82px}.learning-toolbar h1{font-size:15px}}@media (prefers-reduced-motion:reduce){.pneumonia-info-panel,.pneumonia-complete-title,.course-title-group,.case-list-title-group{animation:none}.pneumonia-progress i,.pneumonia-option,.case-study-action,.course-action-card{transition:none}}
