:root{color-scheme:light;--blue:#1263da;--ink:#122c4d;--muted:#60738a;--line:#dce5f0;--bg:#f4f7fc;--white:#fff;font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}a{color:inherit;text-decoration:none}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}:focus-visible{outline:3px solid #317be1;outline-offset:4px}button,a{touch-action:manipulation}button{min-height:44px}button,a{transition:background .18s,color .18s,box-shadow .18s,transform .18s}.topbar{height:92px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 4vw;gap:24px;background:#fff}.brand{display:flex;align-items:center;gap:12px;font-weight:750;font-size:24px;letter-spacing:1px}.mark{display:grid;place-items:center;width:42px;height:42px;background:var(--blue);color:white;border-radius:13px;font-size:28px}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:3px;color:var(--muted)}.topbar nav{display:flex;gap:8px}.topbar nav a{padding:13px 20px;font-size:14px;border-radius:8px;color:var(--muted)}.topbar nav a:hover,.topbar nav a[aria-current]{background:#eaf2ff;color:var(--blue)}.top-note{font-size:12px;color:var(--muted);display:flex;gap:10px;align-items:center}.top-note i{background:#238970;border-radius:50%;width:6px;height:6px}.portal{max-width:1240px;margin:0 auto;padding:64px 40px 24px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:3px;color:var(--blue);display:flex;align-items:center;gap:12px}.eyebrow:before{content:"";height:1px;width:32px;background:currentColor}.intro{display:flex;justify-content:space-between;align-items:end;gap:30px;margin:24px 0 40px}.intro h1{font-size:clamp(32px,4vw,48px);line-height:1.3;letter-spacing:-1.5px;margin:0 0 18px;font-weight:650}.intro p{color:var(--muted);font-size:15px;line-height:1.9;margin:0}.total{display:flex;align-items:baseline;gap:9px;color:var(--muted);white-space:nowrap;font-size:12px}.total strong{font-size:40px;font-weight:400;color:var(--ink);font-family:Georgia,serif}.entries{display:grid;grid-template-columns:1fr 1fr;gap:24px}.entry{display:block;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--white)}.entry:hover{transform:translateY(-4px);box-shadow:0 18px 40px #183b6510;border-color:#b5cdec}.entry-art{height:270px;background:#e8f1ff;position:relative;overflow:hidden;display:flex;align-items:flex-start;justify-content:center;gap:18px;padding:30px 50px 0}.entry.doctor .entry-art{background:#e8f3f4}.entry-art:before{content:"";position:absolute;inset:25px;border:1px solid #fff9;border-radius:50%}.mini-screen{width:144px;flex-shrink:0;background:white;border:5px solid #fff;border-radius:20px;box-shadow:0 10px 35px #19396a21;overflow:hidden;position:relative;transform:rotate(-7deg) translateY(22px);height:310px}.mini-screen:nth-child(2){transform:rotate(7deg);margin-top:-5px}.mini-screen img{width:100%;height:auto;display:block}.entry-body{padding:28px 30px}.entry-label{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:11px;letter-spacing:1px}.entry h2{font-size:26px;letter-spacing:-.5px;margin:14px 0 10px}.entry p{font-size:13px;color:var(--muted);line-height:1.8;margin:0 0 24px}.entry-link{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;font-size:14px;font-weight:600;color:var(--blue)}.entry-link span:last-child{font-size:20px;line-height:20px}.portal-footer{display:flex;justify-content:space-between;gap:18px;font-size:11px;color:var(--muted);margin-top:30px;padding:10px 0;line-height:1.8}.gallery-shell{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:calc(100vh - 92px)}.sidebar{background:#fff;border-right:1px solid var(--line);padding:32px 20px;position:sticky;top:0;height:100vh;overflow:auto}.back{color:var(--muted);font-size:12px;padding:12px 8px;display:block}.sidebar h2{font-size:20px;margin:25px 8px 8px}.sidebar p{font-size:12px;color:var(--muted);margin:0 8px 24px}.filters{display:flex;flex-direction:column;gap:5px}.filter{display:flex;align-items:center;justify-content:space-between;border:0;background:transparent;border-radius:8px;text-align:left;padding:12px;color:var(--muted);font-size:13px;white-space:nowrap}.filter small{font-size:11px;opacity:.8;margin-left:16px}.filter:hover{background:#f2f6fc}.filter.active{background:#eaf2ff;color:var(--blue);font-weight:650}.gallery-main{padding:36px 36px 50px;min-width:0}.gallery-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.gallery-heading h1{font-size:28px;margin:0 0 10px}.gallery-heading p{font-size:13px;color:var(--muted);margin:0;line-height:1.8}.search-box{display:flex;align-items:center;border:1px solid var(--line);border-radius:9px;background:#fff;padding-left:14px;gap:8px;min-width:220px}.search-box input{border:0;outline-offset:0;background:transparent;width:100%;min-width:0;min-height:46px;padding:12px;font-size:13px}.search-box span{color:var(--muted)}.results-bar{display:flex;justify-content:space-between;align-items:center;margin:30px 0 18px;gap:12px;font-size:12px;color:var(--muted)}.results-bar strong{color:var(--ink);font-size:14px;font-weight:550}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:22px}.design-card{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;min-width:0}.design-card:hover{border-color:#8eb6f2;box-shadow:0 8px 26px #183b6510;transform:translateY(-3px)}.preview{padding:14px 14px 0;background:#eaf0f8;aspect-ratio:0.65;overflow:hidden;position:relative}.preview img{width:100%;height:auto;display:block;border-radius:8px 8px 0 0;box-shadow:0 3px 13px #1e3a5a15}.card-info{padding:14px 13px 16px}.card-index{font-size:10px;color:var(--muted);display:flex;justify-content:space-between;gap:8px;margin-bottom:8px}.card-title{font-size:13px;line-height:1.6;font-weight:550;display:block}.empty{padding:70px 15px;text-align:center;color:var(--muted);grid-column:1/-1}.empty h2{color:var(--ink);font-size:20px}.empty button{border:1px solid var(--line);background:white;color:var(--blue);border-radius:8px;padding:8px 18px}.hint{color:var(--muted);font-size:11px;margin-top:30px;line-height:1.8}dialog{position:fixed;inset:0;margin:auto;width:min(1200px,96vw);height:94dvh;max-height:94dvh;max-width:96vw;padding:0;border:1px solid #d4e0ef;border-radius:16px;background:#e9eef5;color:var(--ink);overflow:hidden}dialog::backdrop{background:#0c1c32cf;backdrop-filter:blur(5px)}dialog[open]{display:flex;flex-direction:column}.viewer-head{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:12px 22px;gap:16px;flex-shrink:0}.viewer-head h2{font-size:16px;margin:4px 0 0;line-height:1.5}.viewer-head #viewer-position{font-size:11px;color:var(--muted)}.viewer-tools{display:flex;gap:8px;flex-shrink:0}.viewer-tools button,.viewer-foot button{background:white;color:var(--ink);padding:8px 15px;border:1px solid var(--line);border-radius:8px;font-size:12px}.viewer-tools button:hover,.viewer-foot button:hover{background:#eaf2ff}.image-stage{flex:1;min-height:0;overflow:auto;position:relative;display:flex;align-items:center;justify-content:center;padding:16px;overscroll-behavior:contain}.image-stage img{max-height:100%;max-width:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 10px 40px #152d501a;cursor:zoom-in}.image-stage img[hidden]{display:none}.image-stage.zoomed{display:block;text-align:center}.image-stage.zoomed img{width:min(100%,var(--image-width,852px));max-height:none;max-width:none;cursor:zoom-out}#image-status{font-size:14px;color:var(--muted)}#retry{padding:8px 20px;border:1px solid var(--line);border-radius:8px;background:white;margin:15px}.viewer-foot{padding:10px 22px;background:#fff;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-shrink:0}.key-hint{font-size:11px;color:var(--muted)}body:has(dialog[open]){overflow:hidden}[hidden]{display:none!important}@media(min-width:1600px){.grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}}@media(max-width:850px){.top-note{display:none}.gallery-shell{grid-template-columns:180px minmax(0,1fr)}.gallery-main{padding:28px 22px}.gallery-heading{display:block}.search-box{margin-top:20px}.grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px}.portal{padding:45px 24px 24px}.entry-art{padding-left:20px;padding-right:20px}.entry-body{padding:22px}.mini-screen{width:125px}.entry-art{height:235px}}@media(max-width:600px){.topbar{padding:0 16px;height:76px;gap:12px}.brand{font-size:20px;gap:8px}.mark{width:34px;height:34px;font-size:23px;border-radius:10px}.brand small{font-size:7px;letter-spacing:1px}.topbar nav{gap:0}.topbar nav a{font-size:11px;padding:16px 8px}.portal{padding:36px 20px 20px}.intro{margin:24px 0;align-items:start}.intro h1{font-size:31px;letter-spacing:-1px}.intro p{font-size:13px}.total{display:none}.entries{grid-template-columns:1fr;gap:20px}.entry-art{height:230px;gap:24px}.mini-screen{width:144px}.entry h2{font-size:24px}.portal-footer{display:block}.portal-footer span{display:block;margin-bottom:6px}.gallery-shell{display:block;min-height:calc(100vh - 76px)}.sidebar{position:relative;padding:15px 16px 10px;height:auto;border-right:0;border-bottom:1px solid var(--line)}.sidebar .back{padding:8px 0}.sidebar h2,.sidebar p{display:none}.filters{flex-direction:row;overflow:auto;margin-top:8px;padding-bottom:8px;gap:5px}.filter{flex-shrink:0;padding:10px 13px;font-size:12px}.filter small{margin-left:7px}.gallery-main{padding:24px 16px 32px}.gallery-heading h1{font-size:24px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.preview{padding:10px 10px 0}.card-info{padding:12px 10px}.card-title{font-size:12px}.card-index{font-size:9px}.results-bar{margin:24px 0 16px}.results-bar span{font-size:10px}.hint{font-size:10px}dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0}.viewer-head{padding:12px;gap:8px}.viewer-head h2{font-size:13px}.viewer-head #viewer-position{font-size:10px}.viewer-tools{gap:5px}.viewer-tools button{padding:8px 10px;font-size:11px}.viewer-foot{padding:10px 12px max(10px,env(safe-area-inset-bottom))}.key-hint{display:none}.image-stage{padding:12px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
