:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:#243b31;background:#f7f5ef;font-synthesis:none}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.shell{width:min(1160px,calc(100% - 40px));margin:auto}.site-header{height:82px;background:#f7f5efef;border-bottom:1px solid #e4e8df;position:sticky;top:0;z-index:30;backdrop-filter:blur(16px)}.header-inner{height:100%;display:flex;align-items:center;gap:38px}.brand{display:flex;align-items:center;gap:11px;white-space:nowrap}.brand-mark{width:39px;height:39px;background:#315846;color:#fff;border-radius:12px;display:grid;place-items:center;font-size:31px;line-height:1;padding-bottom:7px}.brand strong{font-size:22px;letter-spacing:.03em}.brand small{display:block;font-size:11px;letter-spacing:.18em;color:#7d8b81;margin-top:1px}.desktop-nav{display:flex;align-items:center;gap:32px;margin-left:auto}.desktop-nav a{font-size:15px;font-weight:650;color:#53665b}.desktop-nav a:hover,.desktop-nav a.active{color:#214d38}.header-actions{display:flex;align-items:center;gap:18px}.header-publish,.btn-primary{border:1px solid #315846;background:#315846;color:#fff;border-radius:10px;padding:11px 19px;font-size:14px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .2s,transform .2s}.header-publish:hover,.btn-primary:hover{background:#234734;transform:translateY(-1px)}.account-link{font-weight:650;font-size:14px;color:#315846}.mobile-nav{display:none}.site-footer{border-top:1px solid #e3e8df;margin-top:90px;padding:36px 0;color:#63766a}.footer-inner{display:flex;justify-content:space-between;align-items:start;gap:24px}.footer-inner strong{color:#315846}.footer-inner p{font-size:13px;margin:8px 0}.footer-inner>p{text-align:right}.toast{position:fixed;right:25px;bottom:26px;background:#253d30;color:#fff;padding:12px 17px;border-radius:11px;box-shadow:0 12px 30px #15332330;opacity:0;transform:translateY(10px);transition:.25s;z-index:100;max-width:min(400px,calc(100% - 40px));pointer-events:none}.toast.show{opacity:1;transform:none}
.hero{height:390px;border-radius:24px;overflow:hidden;position:relative;margin-top:30px;background:#e8e1d4}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f6efe4 0%,#f6efe4eb 35%,#f6efe465 58%,transparent 76%);z-index:1}.hero img{width:100%;height:100%;object-fit:cover;object-position:center 43%}.hero-content{position:absolute;z-index:2;top:50%;left:5.4%;transform:translateY(-50%);max-width:480px}.eyebrow{color:#ab6e47;letter-spacing:.16em;font-size:12px;font-weight:800}.hero h1{font-size:clamp(32px,3.7vw,52px);line-height:1.18;letter-spacing:-.045em;margin:18px 0 14px;color:#254633}.hero p{font-size:16px;line-height:1.8;color:#50685a;margin:0 0 24px;max-width:385px}.hero-buttons{display:flex;gap:10px;flex-wrap:wrap}.btn-secondary{border:1px solid #b8c7b8;background:#fffdf8;color:#315846;border-radius:10px;padding:10px 18px;font-size:14px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn-secondary:hover{background:#f0f5ec}.btn-quiet{border:0;background:transparent;color:#35654d;font-size:14px;font-weight:700;padding:9px}.btn-danger{background:#fff;border:1px solid #e1b7a9;color:#ae573f;border-radius:9px;padding:9px 13px;font-size:13px;font-weight:700}.quick-panel{background:#fff;border:1px solid #e3e9df;box-shadow:0 14px 44px #2244310b;border-radius:17px;display:flex;align-items:center;gap:18px;padding:20px 24px;margin:-35px auto 0;position:relative;z-index:3;width:calc(100% - 54px)}.quick-panel strong{white-space:nowrap;font-size:16px}.quick-panel form{display:flex;gap:10px;flex:1}.input,.select,.textarea{border:1px solid #d9e2d8;border-radius:9px;background:#fff;color:#294437;padding:11px 12px;min-height:44px;outline:none}.input:focus,.select:focus,.textarea:focus{border-color:#568269;box-shadow:0 0 0 3px #dce9dc}.quick-panel .input{flex:1;min-width:120px}.quick-panel .select{width:138px}.quick-panel .btn-primary{min-width:94px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:15px;margin:58px 0 22px}.section-head h2,.page-head h1{margin:0;color:#284c38;letter-spacing:-.035em}.section-head h2{font-size:27px}.section-head p,.page-head p{color:#697a70;margin:7px 0 0;line-height:1.65}.text-link{font-size:14px;color:#38644e;font-weight:750}.text-link:hover{text-decoration:underline}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{background:#fff;border:1px solid #e4e9e0;border-radius:16px;overflow:hidden;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);box-shadow:0 14px 28px #1e47310f}.card-image{aspect-ratio:1.45;background:#e9eee7;position:relative;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover}.card-image .no-photo{height:100%;display:grid;place-items:center;color:#809487;font-size:14px}.pill{font-size:12px;font-weight:750;padding:6px 10px;border-radius:100px;background:#edf4ec;color:#38644e;white-space:nowrap}.pill.orange{background:#fff0e5;color:#b66d40}.pill.gray{background:#edf0eb;color:#6f7c70}.card-image .pill{position:absolute;left:12px;top:12px;background:#fffdf8e8}.card-body{padding:17px}.card-title{font-size:19px;font-weight:750;margin:0 0 8px;color:#254633}.card-meta{font-size:13px;color:#708176;margin-bottom:11px;display:flex;gap:10px;flex-wrap:wrap}.card-desc{color:#5b6e61;line-height:1.6;font-size:14px;margin:0;min-height:44px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.home-alerts{margin-top:34px}.notice-strip{margin-top:50px;background:#eaf1e7;border-radius:18px;display:grid;grid-template-columns:1fr auto;gap:25px;align-items:center;padding:26px 32px}.notice-strip h3{font-size:22px;margin:0 0 7px;color:#2e503c}.notice-strip p{margin:0;color:#607568;line-height:1.6}.empty{border:1px dashed #bdcbbc;background:#fffdf9;border-radius:16px;padding:36px;text-align:center;color:#688071}.empty strong{display:block;font-size:18px;color:#375a45;margin-bottom:8px}.empty p{margin:0 0 18px}.empty .btn-secondary{margin:auto}.page-head{margin:42px 0 24px;display:flex;align-items:end;justify-content:space-between;gap:20px}.page-head h1{font-size:36px}.page-head .eyebrow{margin-bottom:10px}.filters{background:#fff;border:1px solid #e3e9df;border-radius:14px;padding:15px;display:flex;gap:10px;margin-bottom:22px}.filters .input{flex:1}.filters .select{min-width:130px}.filter-actions{display:flex;gap:8px}.result-count{color:#6c7e70;font-size:14px;margin:0 0 15px}.tag-row{display:flex;gap:7px;flex-wrap:wrap}.detail-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:26px;margin-top:42px}.detail-photo{height:470px;border-radius:18px;overflow:hidden;background:#e8eee6}.detail-photo img{height:100%;width:100%;object-fit:cover}.thumbs{display:flex;gap:9px;margin-top:10px}.thumbs button{border:2px solid transparent;background:none;padding:0;border-radius:9px;overflow:hidden;width:76px;height:66px}.thumbs button.active{border-color:#446f55}.thumbs img{height:100%;width:100%;object-fit:cover}.detail-panel,.paper{background:#fff;border:1px solid #e3e9df;border-radius:18px;padding:27px}.detail-panel h1{font-size:34px;margin:13px 0 9px;color:#294c39}.detail-panel .lead{font-size:15px;color:#688072;line-height:1.7}.detail-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin:24px 0;border-top:1px solid #e8ece5;border-bottom:1px solid #e8ece5;padding:22px 0}.fact small{display:block;color:#829286;font-size:12px;margin-bottom:5px}.fact strong{font-size:15px;color:#365342}.detail-panel .btn-primary{width:100%;margin-top:10px}.detail-extra{margin-top:20px}.detail-extra h2{font-size:19px;color:#315540;margin:26px 0 9px}.detail-extra p{white-space:pre-wrap;line-height:1.8;color:#52695a;margin:0}.detail-extra .paper{margin-bottom:18px}.similar{margin-top:35px}.narrow{max-width:820px;margin:42px auto 0}.form-page{max-width:760px;margin:42px auto 0}.form-page h1,.narrow h1{font-size:34px;color:#294c39;margin:0 0 8px}.form-page>p,.narrow>p{color:#688072;line-height:1.7;margin:0 0 26px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-size:14px;font-weight:700;color:#3a5945}.field .textarea{min-height:105px;resize:vertical}.field .hint{font-size:12px;color:#839487}.form-actions{display:flex;gap:10px;margin-top:25px;align-items:center}.upload-box{border:1px dashed #aabfaf;border-radius:11px;padding:19px;color:#55705c;background:#f7faf4}.upload-box input{width:100%}.photo-preview{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.photo-preview img{width:80px;height:80px;object-fit:cover;border-radius:8px}.choice-row{display:flex;gap:10px;flex-wrap:wrap}.choice-row label{border:1px solid #d6e3d5;border-radius:10px;padding:13px 17px;cursor:pointer;background:#fff;flex:1;min-width:140px}.choice-row input{accent-color:#315846;margin-right:7px}.choice-row label:has(input:checked){border-color:#457559;background:#eff6ed}.auth-layout{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:stretch;margin:60px auto;max-width:940px}.auth-aside{background:#dfebe1;border-radius:20px;padding:45px;display:flex;flex-direction:column;justify-content:center}.auth-aside h1{font-size:37px;color:#2e543d;line-height:1.3;margin:0 0 14px}.auth-aside p{line-height:1.8;color:#5d7464}.auth-card{background:#fff;border:1px solid #e3e9df;border-radius:20px;padding:36px}.auth-tabs{display:flex;gap:18px;margin-bottom:27px;border-bottom:1px solid #e5eae3}.auth-tabs button{background:none;border:0;padding:0 0 11px;color:#7b8c80;font-weight:700}.auth-tabs button.active{border-bottom:2px solid #315846;color:#315846}.auth-card form{display:grid;gap:16px}.auth-card .btn-primary{margin-top:5px}.info-list{display:grid;gap:12px;margin-top:26px}.info-item{display:flex;gap:15px;background:#fff;border:1px solid #e3e9df;border-radius:14px;padding:19px}.info-number{background:#e8f0e6;color:#315846;width:32px;height:32px;flex:none;border-radius:50%;display:grid;place-items:center;font-weight:800}.info-item h3{margin:0 0 5px;color:#345941}.info-item p{margin:0;color:#6a7c70;line-height:1.6}.account-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px;margin-top:42px}.account-sidebar{align-self:start;background:#fff;border:1px solid #e3e9df;border-radius:16px;padding:20px;position:sticky;top:104px}.account-sidebar h2{font-size:20px;margin:0 0 5px;color:#315846}.account-sidebar p{font-size:12px;color:#849486;margin:0 0 17px}.account-sidebar a,.account-sidebar button{display:block;width:100%;text-align:left;border:0;background:transparent;border-radius:8px;padding:10px;color:#4f6856;font-size:14px}.account-sidebar a:hover,.account-sidebar button:hover{background:#f0f5ed}.account-main section{margin-bottom:24px}.account-main h2{font-size:21px;color:#315846;margin:0 0 13px}.account-item{background:#fff;border:1px solid #e3e9df;border-radius:12px;padding:17px;margin-bottom:9px}.account-item header{display:flex;justify-content:space-between;gap:10px;align-items:start}.account-item h3{margin:0 0 7px;font-size:16px;color:#294d39}.account-item p{margin:5px 0;color:#647a69;font-size:13px;line-height:1.6;white-space:pre-wrap}.account-item .row-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.mini-select{border:1px solid #d8e2d8;border-radius:8px;background:#fff;padding:8px;font-size:13px;max-width:100%}.mini-btn{border:1px solid #b8cbbb;background:#f1f6ee;color:#335a42;border-radius:8px;padding:8px 11px;font-weight:700;font-size:13px}.status-note{background:#fff3e9;border-radius:10px;padding:13px 15px;color:#946343;font-size:13px;line-height:1.6;margin:17px 0}.split-choice{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.split-choice a{background:#fff;border:1px solid #dce7db;border-radius:15px;padding:24px}.split-choice a:hover{border-color:#5c8a69;box-shadow:0 10px 30px #1e47310d}.split-choice strong{display:block;font-size:19px;color:#315846}.split-choice p{color:#6a7e6d;margin:9px 0 0;line-height:1.6}.gift-hero{background:#e9f1e6;border-radius:20px;padding:45px;margin:42px 0;display:grid;grid-template-columns:1.4fr .6fr;align-items:center;gap:25px}.gift-hero h1{font-size:37px;line-height:1.25;color:#2c513b;margin:12px 0}.gift-hero p{line-height:1.8;color:#5c7565;max-width:620px}.gift-symbol{font-size:115px;text-align:center;color:#b48158}.small-muted{font-size:12px;color:#899589}.pending-note{background:#fff5e9;color:#985f39;border-radius:8px;padding:10px 12px;font-size:13px;margin-top:12px}.admin-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}.admin-columns section{min-width:0}.loading{padding:65px;text-align:center;color:#78907b}
@media(max-width:900px){.desktop-nav{gap:18px}.header-inner{gap:18px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-layout{grid-template-columns:1fr}.detail-photo{height:420px}.detail-panel{order:-1}.quick-panel{width:calc(100% - 20px)}.admin-columns{grid-template-columns:1fr}}
@media(max-width:660px){.shell{width:min(100% - 30px,1160px)}.site-header{height:63px}.header-inner{gap:8px}.brand-mark{width:34px;height:34px;font-size:26px}.brand strong{font-size:18px}.brand small{font-size:9px;letter-spacing:.1em}.desktop-nav,.header-publish{display:none}.header-actions{margin-left:auto}.account-link{font-size:12px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fffdf9;border-top:1px solid #dfe8dc;z-index:30;justify-content:space-around;padding:6px 0 max(6px,env(safe-area-inset-bottom));box-shadow:0 -5px 25px #22443112}.mobile-nav a{font-size:11px;color:#708376;display:flex;flex-direction:column;align-items:center;gap:1px;min-width:55px}.mobile-nav a span{font-size:23px;height:26px;line-height:26px}.mobile-nav a.active{color:#315846;font-weight:800}.hero{margin-top:16px;height:430px;border-radius:18px}.hero img{object-position:65% center}.hero:before{background:linear-gradient(0deg,#f6efe4 0%,#f6efe4ec 28%,#f6efe452 58%,transparent 84%)}.hero-content{top:auto;bottom:21px;left:22px;right:22px;transform:none}.hero h1{font-size:34px;margin:10px 0}.hero p{font-size:14px;line-height:1.65;margin-bottom:15px;max-width:315px}.hero .eyebrow{font-size:10px}.hero-buttons .btn-primary,.hero-buttons .btn-secondary{padding:9px 13px;font-size:13px}.quick-panel{margin:14px auto 0;width:100%;display:block;padding:16px}.quick-panel strong{display:block;margin-bottom:12px}.quick-panel form{display:grid;grid-template-columns:1fr 1fr}.quick-panel .input{grid-column:1/-1;width:100%}.quick-panel .select,.quick-panel .btn-primary{width:100%}.section-head{margin-top:44px}.section-head h2{font-size:23px}.section-head p{font-size:13px}.cards{grid-template-columns:1fr;gap:14px}.card-image{aspect-ratio:1.65}.notice-strip{grid-template-columns:1fr;padding:23px;gap:15px}.notice-strip h3{font-size:20px}.page-head{margin:29px 0 20px;align-items:start}.page-head h1{font-size:28px}.page-head p{font-size:13px}.page-head .header-publish{display:none}.filters{display:grid;grid-template-columns:repeat(2,1fr)}.filters .input{grid-column:1/-1}.filters .select{min-width:0;width:100%}.filter-actions{grid-column:1/-1}.filter-actions .btn-primary{flex:1}.detail-layout{margin-top:25px;gap:14px}.detail-photo{height:310px}.detail-panel,.paper{padding:21px}.detail-panel h1{font-size:29px}.detail-facts{gap:10px}.detail-extra{margin-top:14px}.form-page,.narrow{margin-top:30px}.form-page h1,.narrow h1{font-size:29px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.auth-layout{grid-template-columns:1fr;margin:30px auto}.auth-aside{padding:24px}.auth-aside h1{font-size:27px}.auth-card{padding:25px}.account-grid{grid-template-columns:1fr;margin-top:26px}.account-sidebar{position:static}.split-choice{grid-template-columns:1fr}.gift-hero{grid-template-columns:1fr;padding:25px;margin-top:26px}.gift-hero h1{font-size:28px}.gift-symbol{display:none}.site-footer{margin-top:60px;padding-bottom:94px}.footer-inner{display:block}.footer-inner>p{text-align:left}.toast{bottom:82px;right:15px}.empty{padding:29px 18px}}
.pagination{display:flex;align-items:center;justify-content:center;gap:15px;margin:30px 0}.pagination span{font-size:14px;color:#66806e}
