:root{--ink:#182b24;--muted:#485b53;--paper:#f7f7ef;--white:#fffdf8;--line:#d9e0d4;--green:#163e32;--lime:#dce8ab;--peach:#f7d8c7;--blue:#dbe7f1;--gold:#f5e8b8;--rad:25px;--shadow:0 8px 22px #163e3209;font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",system-ui,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img,svg{display:block;max-width:100%}p,h1,h2,h3{margin:0}p{line-height:1.65}.shell{width:min(1248px,calc(100% - 88px));margin-inline:auto}.visually-hidden,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip:focus{position:fixed;top:8px;left:8px;z-index:100;background:white;padding:12px}.header{background:var(--paper);border-bottom:1px solid #e0e4d9}.header-inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;min-height:77px}.brand{display:inline-flex;align-items:center;gap:12px;justify-self:start}.brand strong{display:block;font-size:20px;line-height:1.2;letter-spacing:.08em}.brand small{display:block;font-size:11px;margin-top:5px;color:var(--muted);letter-spacing:.11em}.mark{width:43px;height:43px;border-radius:13px;background:var(--green);color:#fbf9e9}.mark svg{width:100%;height:100%}nav{display:flex;gap:26px;align-items:center;font-size:14px;font-weight:650}nav a{padding:10px 3px;position:relative;color:var(--muted)}nav a[aria-current]{color:var(--ink)}nav a[aria-current]:after{content:"";position:absolute;bottom:0;left:4px;right:4px;height:3px;background:#738a45;border-radius:2px}.header-action{justify-self:end}.menu-toggle{display:none}.btn{border:1px solid transparent;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:11px 18px;font-weight:750;font-size:14px;line-height:1.3;min-height:43px;white-space:nowrap}.btn:hover{filter:brightness(.94)}.btn-green{background:var(--green);color:white}.btn-light{background:var(--white);border-color:#d4ded3;color:var(--green)}.btn-outline{background:transparent;border-color:#6d8272;color:var(--green)}.btn:disabled{cursor:default;opacity:.65}.link{font-weight:750;color:var(--green);text-decoration:underline;text-underline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #5274ae;outline-offset:3px}
#main{min-height:60vh;padding:27px 0 65px}.hero{display:grid;grid-template-columns:1.65fr 1fr;gap:16px}.hero-copy{display:flex;flex-direction:column;justify-content:center;min-height:363px;background:#e7efd8;border:1px solid #dce5ca;border-radius:var(--rad);padding:40px 42px;position:relative;overflow:hidden;isolation:isolate}.hero-copy:after{content:"";position:absolute;width:240px;height:240px;border:1px solid #b9c99d;border-radius:50%;right:-105px;bottom:-140px;box-shadow:0 0 0 25px #e7efd8,0 0 0 26px #b9c99d,0 0 0 51px #e7efd8,0 0 0 52px #b9c99d;z-index:-1}.eyebrow{font-weight:780;font-size:12px;letter-spacing:.13em;color:#355648}.eyebrow .dot{display:inline-block;background:#678b4a;width:8px;height:8px;border-radius:50%;margin-right:8px}.hero h1{font-size:clamp(39px,5.2vw,76px);letter-spacing:-.075em;line-height:1.08;margin:16px 0;color:#143a2c}.hero h1 span{color:#47633a}.hero-copy>p{max-width:32em;color:#3d5348;font-size:15px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.hero-visual{position:relative;overflow:hidden;min-height:350px;border-radius:var(--rad);background:#d4e3cf;color:#fbfbf0;isolation:isolate}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center 56%;position:absolute;inset:0;z-index:-2}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#162d24e0 0%,transparent 56%);z-index:-1}.hero-note{position:absolute;inset:auto 24px 22px}.hero-note b{display:block;font-size:26px;letter-spacing:-.02em}.hero-note small{display:block;margin-top:6px;font-size:12px;letter-spacing:.07em;color:#f3f5e3}.hero-note a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.section{margin-top:36px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:14px}.section-head h2{font-size:clamp(23px,3vw,34px);letter-spacing:-.05em}.section-head p{font-size:14px;color:var(--muted);margin-top:5px}.section-kicker{color:#46634e;font-size:11px;letter-spacing:.16em;font-weight:800;margin-bottom:4px}.scenes{display:grid;grid-template-columns:1.23fr 1fr 1fr .93fr;gap:12px}.scene{border:1px solid #24382b13;border-radius:21px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;min-width:0;min-height:206px;padding:17px 17px 12px;position:relative;transition:transform .16s;box-shadow:var(--shadow)}.scene:hover{transform:translateY(-3px)}.scene-home{background:#f5dfcb}.scene-renovation{background:#f5e9b9}.scene-office{background:#dbe7f1}.scene-property{background:#dce9cf}.scene small{color:#495c54;font-weight:800;font-size:11px;letter-spacing:.09em}.scene h3{font-size:21px;margin:4px 0;letter-spacing:-.04em}.scene p{font-size:12px;color:#42544a;line-height:1.45}.scene svg{width:100%;height:86px;margin-top:5px}.scene-arrow{position:absolute;right:12px;bottom:12px;border:1px solid #273d3445;border-radius:50%;width:29px;height:29px;display:grid;place-items:center;background:#ffffff70;font-size:16px}.lanes{display:grid;grid-template-columns:1.15fr 1fr;gap:14px}.lane{border-radius:var(--rad);padding:24px;background:#fffdf6;border:1px solid var(--line);min-width:0}.lane.member{background:#dbe7ee;border-color:#cbdde6}.lane h3{font-size:24px;letter-spacing:-.04em}.lane p{font-size:14px;color:#485c52;margin:7px 0 14px}.steps{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px;font-weight:700;margin:9px 0 16px}.steps span{background:#ecf0e5;border-radius:8px;padding:6px 9px}.quota{display:flex;gap:22px;margin:5px 0 13px}.quota b{font-size:35px;color:#214d45;line-height:1}.quota span{font-size:12px;color:#345649}
.page-title{border-radius:var(--rad);padding:26px 28px;background:#e5eddd;border:1px solid #d6e1ce;margin-bottom:16px}.page-title.blue{background:var(--blue);border-color:#ccdae4}.page-title.gold{background:#f8edcc;border-color:#e8dcba}.page-title h1{font-size:clamp(30px,5vw,49px);line-height:1.14;letter-spacing:-.06em;margin:7px 0}.page-title p{color:var(--muted)}.page-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:14px}.panel{background:var(--white);border:1px solid var(--line);border-radius:var(--rad);padding:22px;margin-top:13px;box-shadow:var(--shadow)}.panel h2{font-size:22px;margin-bottom:9px}.panel h3{font-size:18px;margin-bottom:6px}.panel p+ p{margin-top:8px}.panel p,.muted{color:var(--muted);font-size:14px}.filters{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr auto;gap:10px;align-items:end}.fields{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin-top:13px}.fields .wide{grid-column:1/-1}label{display:grid;gap:5px;font-size:13px;font-weight:720}input:not([type=checkbox]),select,textarea{border:1px solid #b9c8bc;background:#fff;color:var(--ink);border-radius:10px;padding:10px 11px;min-height:42px;width:100%;min-width:0}textarea{min-height:108px;resize:vertical}.label-note{font-weight:400;color:var(--muted);font-size:12px}.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.result-grid .panel{margin-top:0}.spacer{margin-top:16px}.tag{display:inline-flex;border-radius:999px;background:#e6edda;padding:5px 9px;color:#3d5845;font-size:12px;font-weight:750}.tag.pending{background:#f5e8bc}.tag.rejected{background:#f7ddd3}.tag.approved{background:#dceccf}.tag.offline{background:#e3e7e4}.entry h3{margin:9px 0}.entry p{overflow-wrap:anywhere}.notice{padding:12px 14px;border-radius:11px;background:#e8eddd;color:#344f40;font-size:13px;line-height:1.65;margin-top:12px}.notice.error{background:#fae0d6;color:#862f24}.notice:empty{display:none}.card-pair{display:grid;grid-template-columns:1fr 1fr;gap:13px}.card-pair .panel{margin-top:0}.card-pair strong{font-size:36px;color:var(--green)}.review-form{border-top:1px solid var(--line);margin-top:12px;padding-top:12px;display:grid;gap:9px}.row-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.footer{background:#173c31;color:#f6f8e9;padding:26px 0}.footer-inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px}.footer strong{font-size:15px}.footer p,.footer-note{font-size:12px;color:#d2dfd2}.footer-links{display:flex;gap:15px;flex-wrap:wrap;font-size:13px}.footer a:hover{text-decoration:underline}.pagination{display:flex;gap:11px;align-items:center;justify-content:center;margin-top:15px}
@media(max-width:980px){.shell{width:calc(100% - 52px)}.header-inner{gap:15px}nav{gap:15px}.hero-copy{padding:30px}.scenes{grid-template-columns:repeat(2,1fr)}.scene{min-height:175px}.scene svg{height:76px}.filters{grid-template-columns:1fr 1fr}.filters label:first-child{grid-column:1/-1}.filters .btn{align-self:end}}
@media(max-width:660px){.shell{width:calc(100% - 30px)}.header-inner{grid-template-columns:1fr auto auto;min-height:65px;gap:8px;position:relative}.brand{gap:7px}.mark{width:34px;height:34px;border-radius:9px}.brand strong{font-size:16px}.brand small{font-size:9px;letter-spacing:.01em;margin-top:3px}.menu-toggle{display:block;background:transparent;border:1px solid #becbbf;color:var(--green);font-weight:700;border-radius:9px;padding:7px;font-size:12px}.header-action{padding:8px 9px;min-height:34px;font-size:11px}nav{display:none;position:absolute;top:58px;right:0;z-index:10;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:12px;box-shadow:0 12px 25px #15362b19}nav.open{display:grid;gap:3px}nav a{padding:9px 10px}nav a[aria-current]:after{display:none}#main{padding:15px 0 40px}.hero{grid-template-columns:1fr;gap:10px}.hero-copy{padding:25px 20px;min-height:282px}.hero-copy h1{margin:12px 0;font-size:clamp(37px,10.7vw,56px)}.hero-copy>p{font-size:13px}.hero-actions{margin-top:16px}.hero-visual{min-height:188px;border-radius:20px}.hero-note{inset:auto 15px 13px}.hero-note b{font-size:21px}.section{margin-top:25px}.section-head{align-items:start;gap:9px}.section-head p{font-size:12px}.section-head .link{white-space:nowrap;font-size:12px;margin-top:10px}.scenes{gap:8px}.scene{border-radius:16px;padding:11px;min-height:158px}.scene h3{font-size:17px}.scene p{font-size:11px}.scene svg{height:58px}.scene-arrow{right:7px;bottom:7px;width:23px;height:23px}.lanes,.result-grid,.card-pair{grid-template-columns:1fr}.lane,.panel,.page-title{padding:16px;border-radius:19px}.lane h3{font-size:20px}.fields{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr}.filters{gap:8px}.btn{min-height:40px}.header-action{min-height:34px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.directory-note{padding:11px 15px;border-radius:12px;background:#e9eddf;color:#40584a;font-size:13px}
.scene{padding:0;min-height:222px;justify-content:initial}
.scene-copy{padding:13px 13px 10px;min-height:98px}
.scene-photo{width:100%;height:117px;object-fit:cover;flex:1}
.scene-arrow{background:#fffdf4e8}
.entry.with-photo{padding:0;overflow:hidden}
.card-photo{width:100%;height:180px;object-fit:cover}
.with-photo .entry-content{padding:16px 19px 19px}
.entry .entry-company{font-weight:740;color:var(--green);margin-top:7px}
.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:20px;align-items:start}
.detail-figure{margin:0;overflow:hidden;border-radius:15px;background:#edf1e9}
.detail-figure img{width:100%;height:auto;max-height:320px;object-fit:cover}
.detail-figure figcaption{font-size:12px;padding:8px 11px;color:var(--muted)}
.service-contact{border-radius:17px;background:#eaf0e5;padding:17px;margin-top:18px}
.service-contact dl{margin:9px 0}
.service-contact dl>div{display:grid;grid-template-columns:5.3em 1fr;gap:8px;margin:5px 0;font-size:14px}
.service-contact dt{font-weight:700}
.service-contact dd{margin:0;overflow-wrap:anywhere}
.service-contact .muted{margin-top:10px}
.credits-list{padding-left:23px;font-size:14px}
.credits-list li{margin-top:9px}
.credits-list span{display:block;color:var(--muted);font-size:12px}
@media(max-width:660px){.scene{min-height:158px}.scene-copy{min-height:85px;padding:8px}.scene-photo{height:82px}.card-photo{height:154px}.with-photo .entry-content{padding:14px}.detail-grid{grid-template-columns:1fr;gap:12px}.service-contact{padding:12px}.service-contact .link{overflow-wrap:anywhere}}
.example-box{border:1px solid #dce5d2;border-radius:15px;background:#edf1e4;padding:13px 15px}
.example-box p{font-size:13px}
.example-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;margin-top:8px}
.publication-preview{border:1px solid var(--line);border-radius:13px;padding:10px 13px;margin-top:14px;background:#f1f4eb}
.publication-preview summary{font-size:14px;font-weight:720;cursor:pointer}
.publication-preview>div{padding:11px 0 2px}
.publication-details{display:grid;gap:5px;margin:10px 0;font-size:13px}
.publication-details div{display:grid;grid-template-columns:5em minmax(0,1fr);gap:7px;align-items:baseline}
.publication-details dt{color:var(--green);font-weight:740}
.publication-details dd{margin:0;overflow-wrap:anywhere;color:var(--muted)}
@media(max-width:660px){.example-box{padding:11px}.example-controls{grid-template-columns:minmax(0,1fr) auto}.example-controls .btn{padding:8px 11px;font-size:12px}}

.membership-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.plan-free{background:#edf3ef}.plan-vip{background:#fff0d5}.plan-svip{background:#eae8fa}.membership-grid strong{font-size:36px}.membership-grid small{font-size:16px}#consult-info{margin-top:20px;padding:20px;background:#f0f4ef;border-radius:12px}.card-photo{width:100%}@media(max-width:760px){.membership-grid{grid-template-columns:1fr}}
/* 晴日街坊：暖杏、晴蓝、珊瑚与多彩场景 */
:root{--ink:#25364a;--muted:#526174;--paper:#fffaf3;--white:#fff;--line:#e3e3df;--green:#245b94;--blue:#dceaff;--gold:#ffedaa;--shadow:0 6px 20px #31435c08}.header{background:#fffdf8;border-color:#e9dfd3}.mark{background:#28669e;color:#fff4d9}nav a[aria-current]{color:#245b94}nav a[aria-current]:after{background:#ec8259}.header-action{background:#bb4b2d}.btn{transition:background-color .18s,transform .18s,box-shadow .18s}.btn:hover{filter:none;transform:translateY(-2px);box-shadow:0 5px 12px #29496918}.btn-green:hover{background:#1e4a7a}.btn-light{border-color:#cbd9e9;color:#245b94}.btn-light:hover{background:#edf5ff}.header-action:hover{background:#a54128}.btn:disabled{transform:none;box-shadow:none}
.hero-copy{background:#ffdfb8;border-color:#f2cfa1}.hero-copy:after{border-color:#eeb56e;box-shadow:0 0 0 25px #ffdfb8,0 0 0 26px #eeb56e,0 0 0 51px #ffdfb8,0 0 0 52px #eeb56e}.eyebrow{color:#70482d}.eyebrow .dot{background:#d15e39}.hero h1{color:#243e62}.hero h1 span{color:#a64429}.hero-copy>p{color:#5a4e43}.hero-actions .btn-light{background:#fffcf6}.hero-visual{border:4px solid #f3c89d}.hero-note small{color:#fff9e9}
.section-kicker{color:#876329}.scene{border-color:#ffffff;box-shadow:0 4px 12px #273e4b09;transition:transform .18s,box-shadow .18s}.scene:hover{transform:translateY(-4px);box-shadow:0 8px 20px #273e4b18}.scene-home{background:#ffcfb9}.scene-renovation{background:#ffe79a}.scene-office{background:#cfe5ff}.scene-property{background:#c8e7dc}.scene h3{color:#253d55}.scene small,.scene p{color:#455669}
.lane{background:#fff0dc;border-color:#f1d9b8}.lane.member{background:#e7e1fa;border-color:#d5c8ee}.lane.member h3{color:#57417d}.lane.member .section-kicker{color:#6a4f92}.steps span:nth-child(1){background:#ffe1c7}.steps span:nth-child(2){background:#dbeaf9}.steps span:nth-child(3){background:#d6ece0}.quota{flex-wrap:wrap;gap:12px 20px}.quota span{color:#584c71}.quota span:nth-child(1) b{color:#3b715c}.quota span:nth-child(2) b{color:#245b94}.quota span:nth-child(3) b{color:#80508e}
.page-title{background:#dcecf8;border-color:#c5deee}.page-title h1{color:#244c73}.page-title.blue{background:#e8e1fa;border-color:#d8cdee}.page-title.blue h1{color:#584378}.page-title.gold{background:#ffedbc;border-color:#eed698}.directory-note{background:#fff0d8;color:#705634}.filters{border-top:4px solid #78a7ca}.tag{background:#dfeef9;color:#285879}.tag.pending{background:#ffedb4;color:#725300}.tag.rejected{background:#ffe0d5;color:#8b3927}.tag.approved{background:#d9eee2;color:#275b43}.tag.offline{background:#e9e7ee;color:#595467}.notice{background:#e9eff9;color:#3c5273}.entry{border-color:#dce4eb}.entry h3 a:hover{color:#276aab;text-decoration:underline;text-underline-offset:4px}.entry-company{color:#476181!important}.result-grid .entry:nth-child(4n+1) .tag{background:#ffe1d1;color:#8f412b}.result-grid .entry:nth-child(4n+2) .tag{background:#fff0b8;color:#745512}.result-grid .entry:nth-child(4n+3) .tag{background:#dceafe;color:#285c8d}.result-grid .entry:nth-child(4n) .tag{background:#daeee3;color:#2f6651}.service-contact{background:#e3f0eb;border:1px solid #cce3d8}#consult-info{background:#fffdf7;border:1px solid #d8e4db}.example-box{background:#fff1d7;border-color:#eddbb8}.publication-preview{background:#eef4fb}.footer{background:#283c59;border-top:5px solid #eab877}.footer p,.footer-note{color:#d7e2ed}
.membership-grid .panel{border-width:1px;border-top-width:6px;padding-top:23px;transition:transform .18s,box-shadow .18s}.membership-grid .panel:hover{transform:translateY(-3px);box-shadow:0 10px 24px #28394f12}.plan-free{background:#e5f2e9;border-color:#77aa8e}.plan-free h2,.plan-free strong{color:#2e664b}.plan-free .tag{background:#cce5d6;color:#2e664b}.plan-vip{background:#fff0c8;border-color:#dfa329}.plan-vip h2,.plan-vip strong{color:#82510c}.plan-vip .tag{background:#ffe19a;color:#785008}.plan-vip .btn{background:#976016;color:#fff}.plan-vip .btn:hover{background:#7c4b0c}.plan-svip{background:#eae3fb;border-color:#9a7bca}.plan-svip h2,.plan-svip strong{color:#694293}.plan-svip .tag{background:#d9c9f0;color:#603a8d}.plan-svip .btn{background:#77509e;color:#fff}.plan-svip .btn:hover{background:#603d83}.membership-grid h2{margin-top:16px}.membership-grid p{color:#485366}.membership-grid .btn{margin-top:18px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#a44e2f}
@media(prefers-reduced-motion:reduce){.scene:hover,.btn:hover,.membership-grid .panel:hover{transform:none}}

.payment-dialog{width:min(440px,calc(100% - 30px));max-height:90dvh;overflow:auto;border:1px solid #e0d8c9;border-radius:24px;padding:26px;background:#fffdf8;color:var(--ink);box-shadow:0 20px 70px #1d2c4833}.payment-dialog::backdrop{background:#20304c88}.payment-dialog h2{margin:14px 0 8px;font-size:25px}.payment-dialog>img{width:min(290px,100%);height:auto;margin:18px auto;border-radius:12px}.payment-dialog>p{font-size:14px;color:var(--muted)}.payment-close{float:right;border:0;background:#eee8de;color:#354358;border-radius:50%;width:32px;height:32px;font-size:24px}.payment-dialog form:last-child{margin-top:16px}.payment-dialog .notice{font-size:13px}
.account-panel{max-width:510px;margin:24px auto}.account-panel form{display:grid;gap:15px;margin-top:20px}.captcha-row{display:grid;grid-template-columns:1fr 142px;gap:12px;align-items:center}.captcha-row button{padding:0;border:0;background:transparent}.captcha-row img{border-radius:8px}.auth-switch{margin-top:20px!important}.auth-switch button{border:0;background:transparent;padding:5px 8px}.account-panel .btn{justify-self:start}

/* 国内实景照片保留作业主体；详情展示完整构图。 */
.card-photo[src$="90001.jpg"]{object-position:50% 32%}.card-photo[src$="34039716.jpg"]{object-position:50% 28%}.detail-figure img{max-height:520px;object-fit:contain}.credits-list small{display:block;color:var(--muted);margin-top:5px}

.card-photo[src$="90105.jpg"]{object-position:50% 80%}.card-photo[src$="90104.jpg"]{object-position:50% 80%}.card-photo[src$="90304.jpg"]{object-fit:contain;background:#f2f0eb}

.pagination{flex-wrap:wrap;gap:8px}.pagination .btn,.page-current{min-width:42px;min-height:42px;display:inline-flex;align-items:center;justify-content:center}.page-current{border-radius:10px;background:var(--green);color:white;font-weight:750;padding:8px 13px}.page-count{font-size:13px;color:var(--muted)}
.card-photo[src$="90006.jpg"]{object-position:50% 72%}.card-photo[src$="90112.jpg"]{object-position:50% 80%}
