@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@600;700;900&family=Noto+Sans+SC:wght@400;500;600;700&display=swap');
:root{--primary:#c9a04e;--primary-dark:#b0883a;--primary-light:#e8d5a0;--text:#2f2925;--bg:#f7f2e9;--muted:#756b63;--line:#e7ddd0;--white:#fff;--error:#a43829;--serif:'Noto Serif SC','Songti SC',serif;--sans:'Noto Sans SC','PingFang SC',sans-serif}
[data-theme="gold"]{--primary:#c9a04e;--primary-dark:#b0883a;--primary-light:#e8d5a0;--text:#2f2925;--bg:#f7f2e9}
[data-theme="green"]{--primary:#2b7a5b;--primary-dark:#1d5c42;--primary-light:#e8f5eb;--text:#1a2e28;--bg:#f4faf5}
[data-theme="orange"]{--primary:#d4892a;--primary-dark:#b06e18;--primary-light:#fbefd5;--text:#3d2a14;--bg:#fef6ec}
[data-theme="blue"]{--primary:#2c5aa0;--primary-dark:#1e4080;--primary-light:#e4ecf5;--text:#1a2535;--bg:#f5f7fb}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:var(--sans);background:#fff}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.site-header{height:84px;padding:0 max(28px,calc((100% - 1240px)/2));display:flex;align-items:center;gap:35px;background:rgba(255,255,255,.96);border-bottom:1px solid #eee7df;position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:12px;margin-right:auto}.brand img{width:48px;height:48px}.brand span{display:flex;flex-direction:column}.brand strong{font-family:var(--serif);font-size:18px;letter-spacing:.07em}.brand small{font-size:8px;letter-spacing:.15em;margin-top:3px;color:#8e8177}.main-nav{display:flex;gap:28px;font-size:14px}.main-nav a{padding:31px 0;position:relative}.main-nav a:after{content:"";position:absolute;bottom:20px;left:50%;right:50%;height:2px;background:var(--primary-dark);transition:.25s}.main-nav a:hover:after,.main-nav a.active:after{left:0;right:0}.header-cta{padding:11px 18px;border:1px solid var(--primary-dark);color:var(--primary-dark);font-size:14px;border-radius:3px}.menu-btn{display:none;border:0;background:none;font-size:24px}.hero{min-height:670px;background:linear-gradient(115deg,#f7f2e9 0%,#fbf8f3 61%,#efe4d3 61%);display:grid;grid-template-columns:minmax(420px,590px) minmax(420px,620px);justify-content:center;gap:54px;align-items:center;padding:55px 40px 68px;overflow:hidden}.eyebrow{color:var(--primary-dark);font-size:12px;font-weight:700;letter-spacing:.18em}.hero h1{font-family:var(--serif);font-size:54px;line-height:1.35;margin:22px 0 18px;letter-spacing:.02em}.hero h1 em{font-style:normal;color:var(--primary-dark)}.hero-copy>p{font-size:17px;line-height:1.9;color:var(--muted);max-width:570px}.hero-actions{display:flex;gap:13px;margin:32px 0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 25px;border-radius:3px;font-weight:600;font-size:14px;transition:.2s}.btn:hover{transform:translateY(-2px)}.primary{background:var(--primary-dark);color:white;box-shadow:0 10px 24px #9f34262b}.ghost{border:1px solid #baa99a;background:#fff8}.trust-row{display:flex;gap:22px;color:#81746b;font-size:12px}.hero-visual{position:relative}.hero-visual>img{width:100%;display:block;box-shadow:0 28px 70px #4b2c1b24;border-radius:38px}.floating-card{position:absolute;left:-35px;bottom:38px;background:white;padding:17px 22px;box-shadow:0 15px 40px #4b2c1b20;display:flex;flex-direction:column;border-left:3px solid var(--primary)}.floating-card b{font-family:var(--serif)}.floating-card span{font-size:12px;color:var(--muted);margin-top:5px}.numbers{display:grid;grid-template-columns:repeat(4,1fr);padding:44px 0;border-bottom:1px solid var(--line)}.numbers div{display:flex;flex-direction:column;align-items:center;border-right:1px solid var(--line)}.numbers div:last-child{border:0}.numbers strong{font-family:var(--serif);font-size:38px;color:var(--primary-dark)}.numbers sup{font:500 12px var(--sans);margin-left:3px}.numbers span{font-size:13px;color:var(--muted);margin-top:7px}.section{padding-top:90px;padding-bottom:100px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:34px}.section-head h2{font:700 34px var(--serif);margin:8px 0 0}.section-head p{color:var(--muted);margin-bottom:0}.section-head>a{font-size:13px;color:var(--primary-dark);border-bottom:1px solid #c8a79f;padding-bottom:5px}.project-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:22px}.project-card{border:1px solid var(--line);background:#fff;transition:.25s}.project-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px #49382c12}.card-art{height:210px;position:relative;overflow:hidden;background-color:#d9c0a0}.card-art:before,.list-art:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,transparent 40%,#552d2466),radial-gradient(circle at 28% 38%,#f7dfb9 0 10%,transparent 11%),linear-gradient(25deg,#744537 0 35%,transparent 36%)}.art-two{background:linear-gradient(140deg,#d7ac77,#8f6753)}.art-two:before{background:radial-gradient(circle at 68% 28%,#f4d89e 0 8%,transparent 9%),linear-gradient(155deg,transparent 42%,#50372e99 43%),linear-gradient(30deg,#965339 0 31%,transparent 32%)}.art-three{background:linear-gradient(135deg,#d7c5a6,#897152)}.art-three:before{background:linear-gradient(90deg,transparent 60%,#3c352d88),radial-gradient(circle at 28% 36%,#f1d6a4 0 8%,transparent 9%),linear-gradient(25deg,#6f5c46 0 38%,transparent 39%)}.card-art span{position:absolute;top:14px;left:14px;background:#fff;color:var(--primary-dark);font-size:11px;padding:5px 9px}.card-body{padding:22px}.card-body small{color:var(--primary-dark);font-size:11px}.card-body h3{font:700 20px var(--serif);line-height:1.55;margin:8px 0}.card-body p{font-size:13px;line-height:1.8;color:var(--muted);min-height:46px}.progress{height:4px;background:#eee5dc;margin:18px 0}.progress i{display:block;height:100%;background:var(--primary-dark)}.card-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:22px}.card-meta a{color:var(--primary-dark)}.about-band{background:var(--primary-dark);color:#fff;padding:80px 0}.about-inner{display:grid;grid-template-columns:140px 1.4fr 1fr;gap:60px;align-items:center}.about-seal{border:1px solid #dcb4a8;border-radius:50%;width:120px;height:120px;text-align:center;padding-top:24px;font:700 29px/1.2 var(--serif);position:relative}.about-seal:after{content:"慈善基金会";position:absolute;font:8px var(--sans);letter-spacing:.15em;bottom:15px;left:25px}.light{color:#e7bd91}.about-inner h2{font:700 36px var(--serif);margin:12px 0}.about-inner p{line-height:2;color:#f0d9d3;font-size:14px}.text-link{display:inline-block;margin-top:12px;border-bottom:1px solid #e5c7bc;padding-bottom:4px;font-size:13px}.about-inner blockquote{font:600 23px/1.8 var(--serif);color:#f4dcc8;margin:0;border-left:1px solid #cf7f6d;padding-left:38px}.disclosure{padding-bottom:90px}.document-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.document-grid a{border:1px solid var(--line);padding:24px 18px;display:flex;align-items:center;gap:13px;transition:.2s}.document-grid a:hover{border-color:var(--primary-dark);background:#fffaf5}.doc-icon{width:42px;height:42px;display:grid;place-items:center;background:var(--bg);color:var(--primary-dark);font:700 17px var(--serif)}.document-grid div{display:flex;flex-direction:column;gap:5px}.document-grid b{font:600 15px var(--serif)}.document-grid small{font-size:10px;color:var(--muted)}.document-grid i{margin-left:auto;color:var(--primary-dark)}.soft-section{background:var(--bg);padding:85px 0}.news-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:55px}.news-photo{height:280px;background:radial-gradient(circle at 70% 32%,#f2d2a2 0 7%,transparent 8%),linear-gradient(25deg,#734735 0 40%,transparent 41%),linear-gradient(145deg,#dcc49f,#9f5d43);margin-bottom:20px}.lead-news small,.news-list span{font-size:11px;color:var(--primary-dark)}.lead-news h3{font:700 23px/1.55 var(--serif);margin:8px 0}.lead-news p,.news-list p{color:var(--muted);font-size:13px;line-height:1.7}.news-list>a{display:grid;grid-template-columns:70px 1fr;padding:18px 0;border-bottom:1px solid #dfd3c5}.news-list time{font:700 24px var(--serif);color:var(--primary-dark);border-right:1px solid #d7c9ba}.news-list time small{display:block;font:10px var(--sans);color:var(--muted)}.news-list div{padding-left:22px}.news-list b{display:block;font:600 16px var(--serif);margin-top:5px}.news-list p{margin:5px 0 0}.join{margin-top:90px;margin-bottom:90px;background:linear-gradient(120deg,#963324,#b95538);color:#fff;padding:60px 70px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 22px 60px #78312325}.join h2{font:700 32px var(--serif);margin:10px 0}.join p{color:#edd6cf;font-size:13px}.join-actions{display:flex;gap:10px}.light-btn{background:#fff;color:var(--primary-dark)}.outline-light{border:1px solid #e5b5aa;color:#fff}footer{background:#2f2a27;color:#cfc4bb;padding-top:60px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.6fr .8fr;gap:50px}.inverse strong{color:#fff}.inverse small{color:#a99c92}.footer-brand p{font-size:13px;margin-top:22px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:10px;font-size:12px}.footer-grid b{color:white;margin-bottom:8px}.qr span{width:92px;height:92px;background:#fff;color:#81776e;display:grid;place-items:center;text-align:center}.copyright{border-top:1px solid #4c4540;margin-top:45px;padding:20px 0;font-size:11px;display:flex;justify-content:space-between}.reveal{animation:rise .8s both}@keyframes rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}

/* mini program demo */
.mini-demo{min-height:100vh;background:radial-gradient(circle at 10% 20%,#f4dfbc 0,transparent 26%),#342d29;color:var(--text);display:flex;align-items:center;justify-content:center;gap:9vw;padding:55px}.mini-intro{width:420px;color:#fff}.mini-intro>a{color:#e6c791;font-size:13px}.mini-intro .eyebrow{display:block;color:#e6c791;margin-top:60px}.mini-intro h1{font:700 45px/1.45 var(--serif);margin:15px 0}.mini-intro>p{color:#cfc3ba;line-height:1.9;font-size:14px}.mini-notes{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.mini-notes span{border:1px solid #655a54;color:#d9cec6;padding:7px 10px;font-size:11px}.phone-wrap{padding:12px;border-radius:46px;background:linear-gradient(145deg,#777,#1c1c1c);box-shadow:0 40px 100px #0009}.phone{width:375px;height:812px;background:#f7f4ef;border-radius:35px;overflow:hidden;position:relative;border:4px solid #111}.phone-status{height:28px;padding:8px 22px 0;display:flex;justify-content:space-between;background:#fff;font-size:10px;font-weight:700}.mini-top{height:46px;background:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 13px 5px 17px;border-bottom:1px solid #f2eee9}.mini-top div{display:flex;align-items:center;gap:7px}.mini-top img{width:25px;height:25px;border-radius:8px}.mini-top b{font:600 14px var(--serif)}.mini-top>span{border:1px solid #ddd;border-radius:18px;padding:5px 9px;font-size:10px}.mini-content{height:662px;overflow-y:auto;scrollbar-width:none}.mini-content::-webkit-scrollbar{display:none}.mini-page{display:none;min-height:100%;padding-bottom:18px}.mini-page.active{display:block}.mini-hero{height:215px;background:linear-gradient(130deg,color-mix(in srgb, var(--primary-dark) 80%, transparent),color-mix(in srgb, var(--primary) 71%, transparent)),url('assets/hero-art.svg') center/cover;color:#fff;padding:28px 24px}.mini-hero>span{font-size:10px;letter-spacing:.15em;color:#f2d3b0}.mini-hero h2{font:700 25px/1.55 var(--serif);margin:12px 0}.mini-hero button{border:0;background:#fff;color:var(--primary-dark);padding:8px 13px;border-radius:2px;font-size:11px}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:13px;margin-top:-18px;position:relative}.quick-grid button{border:0;background:#fff;text-align:left;padding:14px;border-radius:5px;box-shadow:0 5px 18px #4733240d;display:grid;grid-template-columns:34px 1fr;column-gap:8px}.quick-grid i{grid-row:1/3;background:#faeee6;color:var(--primary-dark);width:32px;height:32px;display:grid;place-items:center;font-style:normal;border-radius:50%}.quick-grid b{font-size:12px}.quick-grid small{font-size:8px;color:#93877f;margin-top:3px}.mini-section-title{display:flex;align-items:center;justify-content:space-between;padding:12px 15px 8px}.mini-section-title h3{font:700 16px var(--serif);margin:0}.mini-section-title button{border:0;background:none;font-size:10px;color:#8b7f76}.mini-feature{background:white;margin:0 13px;border-radius:5px;overflow:hidden;display:grid;grid-template-columns:125px 1fr;box-shadow:0 5px 16px #4b37260d}.mini-feature-art{background:linear-gradient(135deg,#dbb789,#86503a);position:relative}.mini-feature-art:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 45% 35%,#f4d4a8 0 10%,transparent 11%),linear-gradient(25deg,#744636 0 42%,transparent 43%)}.mini-feature-art span{position:absolute;z-index:2;background:#fff;color:var(--primary-dark);font-size:8px;padding:4px;top:8px;left:8px}.mini-feature>div:last-child{padding:13px}.mini-feature small{font-size:8px;color:var(--primary-dark)}.mini-feature h3{font:600 13px/1.5 var(--serif);margin:5px 0}.mini-feature p{font-size:9px;color:#8c8178}.mini-feature i{font-style:normal;font-size:9px;color:var(--primary-dark)}.mini-news{background:#fff;margin:0 13px;padding:12px;display:grid;grid-template-columns:45px 1fr;gap:10px;border-radius:5px}.mini-news time{font:700 12px var(--serif);color:var(--primary-dark);border-right:1px solid #eee}.mini-news b{font:600 11px var(--serif)}.mini-news p{font-size:8px;color:#948880;margin:5px 0}.page-title{background:#fff;padding:25px 18px 18px}.page-title h2{font:700 23px var(--serif);margin:0}.page-title p{font-size:10px;color:#8f837a;margin-bottom:0}.filter-pills{display:flex;gap:6px;padding:12px;overflow:hidden}.filter-pills button{white-space:nowrap;border:0;background:#ede7df;color:#746960;border-radius:20px;padding:7px 11px;font-size:9px}.filter-pills .active{background:var(--primary-dark);color:#fff}.mini-project-list{padding:0 12px;display:flex;flex-direction:column;gap:10px}.mini-project-list article{background:#fff;border-radius:5px;overflow:hidden;display:grid;grid-template-columns:115px 1fr;min-height:125px}.list-art{position:relative}.mini-project-list article>div:last-child{padding:13px 11px}.mini-project-list span{font-size:8px;color:var(--primary-dark)}.mini-project-list h3{font:600 13px/1.55 var(--serif);margin:6px 0}.mini-project-list p{font-size:8px;color:#8d8179}.activity-banner{margin:13px;background:linear-gradient(135deg,#9c3325,#c16642);color:#fff;padding:24px 20px;border-radius:7px}.activity-banner span{font-size:9px;color:#f1cfae}.activity-banner h3{font:700 19px var(--serif);margin:8px 0}.activity-banner p{font-size:9px;color:#f0d5cd}.activity-banner button{border:0;background:#fff;color:var(--primary-dark);padding:7px 14px;font-size:10px;border-radius:2px}.subhead{font:700 15px var(--serif);margin:20px 15px 8px}.activity-item{background:#fff;margin:0 13px 9px;padding:12px;display:grid;grid-template-columns:43px 1fr auto;gap:10px;align-items:center}.activity-item time{font:700 22px var(--serif);color:var(--primary-dark);text-align:center}.activity-item time small{display:block;font:8px var(--sans);color:#998b81}.activity-item div span{font-size:8px;color:var(--primary-dark)}.activity-item b{display:block;font:600 11px var(--serif);margin:3px 0}.activity-item p{font-size:8px;color:#91857c;margin:0}.activity-item button,.volunteer-card button{border:1px solid #cdb7ac;color:var(--primary-dark);background:#fff;padding:5px 8px;font-size:9px}.volunteer-card{margin:17px 13px;background:#efe2d2;padding:14px;display:flex;align-items:center;gap:10px}.volunteer-card>i{font-style:normal;color:var(--primary-dark);font-size:22px}.volunteer-card div{flex:1}.volunteer-card b{font:600 12px var(--serif)}.volunteer-card p{font-size:8px;color:#88786d;margin:4px 0}.profile{background:linear-gradient(135deg,#963225,#ba5638);color:#fff;padding:30px 20px;display:flex;align-items:center;gap:12px}.avatar{width:48px;height:48px;background:#f3dbc2;color:var(--primary-dark);display:grid;place-items:center;border-radius:50%;font:700 20px var(--serif)}.profile>div:nth-child(2){flex:1}.profile h2{font:600 16px var(--serif);margin:0}.profile p{font-size:8px;color:#ecd3cb}.profile button{background:#fff2;border:1px solid #e6aaa0;color:white;border-radius:15px;padding:5px 12px;font-size:9px}.record-card,.service-list{background:#fff;margin:12px;border-radius:5px;padding:15px}.record-card h3,.service-list h3{font:700 14px var(--serif);margin:0 0 14px}.record-card>div{display:grid;grid-template-columns:repeat(3,1fr)}.record-card button{border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:7px;font-size:9px}.record-card i{font-style:normal;font-weight:700;color:var(--primary-dark);font-size:15px}.service-list button{width:100%;border:0;border-top:1px solid #f0ece7;background:#fff;padding:13px 2px;display:flex;justify-content:space-between;text-align:left;font-size:10px}.service-list i{font-size:17px;color:#bbb;font-style:normal}.mini-version{text-align:center;font-size:8px;color:#aaa;margin-top:25px}.tabbar{height:68px;background:#fff;border-top:1px solid #eee8e1;display:grid;grid-template-columns:repeat(4,1fr);padding-bottom:7px}.tabbar button{border:0;background:none;color:#978b83;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:9px}.tabbar i{font-style:normal;font-size:17px}.tabbar button.active{color:var(--primary-dark)}.mini-modal{display:none;position:absolute;inset:0;background:#0006;z-index:10;align-items:center;justify-content:center;padding:35px}.mini-modal.open{display:flex}.mini-modal>div{background:#fff;border-radius:8px;text-align:center;padding:28px 24px}.modal-icon{display:grid;place-items:center;width:42px;height:42px;background:#f4e7dd;color:var(--primary-dark);border-radius:50%;margin:auto;font-style:normal}.mini-modal h3{font:700 17px var(--serif);margin:12px 0 6px}.mini-modal p{font-size:10px;line-height:1.7;color:#82776e}.mini-modal button{border:0;background:var(--primary-dark);color:#fff;width:100%;padding:9px;margin-top:10px;font-size:11px}
@media(max-width:1000px){.main-nav{display:none}.main-nav.open{display:flex;position:absolute;top:84px;left:0;right:0;background:#fff;flex-direction:column;padding:20px 30px;gap:0;box-shadow:0 10px 20px #0001}.main-nav.open a{padding:12px}.menu-btn{display:block}.header-cta{display:none}.hero{grid-template-columns:1fr 1fr}.hero h1{font-size:42px}.project-grid{grid-template-columns:1fr 1fr}.project-card:last-child{grid-column:1/3}.document-grid{grid-template-columns:1fr 1fr}.about-inner{grid-template-columns:120px 1fr}.about-inner blockquote{display:none}.mini-demo{gap:4vw}.mini-intro{width:350px}}
@media(max-width:760px){.wrap{width:min(100% - 30px,1180px)}.site-header{height:72px;padding:0 15px}.brand img{width:42px}.brand strong{font-size:15px}.hero{grid-template-columns:1fr;min-height:auto;padding:48px 20px 56px;background:linear-gradient(180deg,#f7f2e9 0%,#fbf8f3 100%)}.hero .reveal,.reveal{animation:none;opacity:1;transform:none}.hero h1{font-size:38px}.hero-copy>p{font-size:15px;color:#5f554d}.hero-visual{margin-top:24px}.floating-card{left:12px;right:12px;bottom:18px}.trust-row{flex-wrap:wrap;gap:8px 15px}.numbers{grid-template-columns:1fr 1fr;gap:26px}.numbers div:nth-child(2){border:0}.project-grid{grid-template-columns:1fr}.project-card:last-child{grid-column:auto}.section{padding:65px 0}.section-head h2{font-size:28px}.section-head>a{display:none}.about-inner{grid-template-columns:1fr}.about-seal{display:none}.document-grid,.news-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.join{margin:55px 15px;padding:40px 24px;display:block}.join-actions{margin-top:25px;flex-direction:column}.mini-demo{display:block;padding:25px 0}.mini-intro{width:auto;padding:0 22px 30px}.mini-intro .eyebrow{margin-top:35px}.mini-intro h1{font-size:34px}.phone-wrap{width:399px;max-width:100%;margin:auto}.phone{width:375px;max-width:calc(100vw - 24px);margin:auto}.footer-grid{gap:30px}.copyright{display:block;line-height:2}.inner-body{grid-template-columns:1fr}.side-tabs{position:static;display:flex;overflow:auto}.side-tabs button{white-space:nowrap}.listing-grid{grid-template-columns:1fr}.inner-hero h1{font-size:38px}}

.inner-hero{background:linear-gradient(120deg,var(--primary-dark),var(--primary));color:#fff;padding:80px 0}.inner-hero h1{font:700 50px var(--serif);margin:14px 0 10px}.inner-hero p{color:#eed8d1}.inner-body{display:grid;grid-template-columns:220px 1fr;gap:55px;padding-top:55px;padding-bottom:90px}.side-tabs{display:flex;flex-direction:column;align-self:start;position:sticky;top:120px}.side-tabs button{border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;padding:15px;color:var(--muted);cursor:pointer}.side-tabs button.active{color:var(--primary-dark);font-weight:700;border-left:3px solid var(--primary-dark);background:var(--bg)}.listing-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.listing-grid article{border:1px solid var(--line);padding-bottom:23px;background:#fff}.listing-art{height:180px;position:relative;background:#d8b98e;overflow:hidden}.listing-art:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 35% 35%,#f0d2a6 0 9%,transparent 10%),linear-gradient(25deg,#744636 0 40%,transparent 41%)}.listing-grid small,.listing-grid h2,.listing-grid p,.listing-grid .text-button{margin-left:20px;margin-right:20px}.listing-grid small{display:block;color:var(--primary-dark);font-size:10px;margin-top:18px}.listing-grid h2{font:600 20px/1.5 var(--serif)}.listing-grid p{font-size:12px;line-height:1.8;color:var(--muted)}.text-button{border:0;background:none;color:var(--primary-dark);padding:0;font-size:12px}.content-paper{background:var(--bg);padding:50px;min-height:400px}.content-paper h2{font:700 30px var(--serif)}.content-paper p{font-size:15px;line-height:2;color:var(--muted)}
@media(max-width:760px){.inner-body{grid-template-columns:1fr;gap:28px}.side-tabs{position:static;display:flex;flex-direction:row;overflow:auto}.side-tabs button{white-space:nowrap}.listing-grid{grid-template-columns:1fr}.inner-hero{padding:55px 0}.inner-hero h1{font-size:38px}.content-paper{padding:30px 24px}}

.mini-modal>div{position:relative;max-height:650px;overflow:auto}.modal-close{position:absolute;right:10px;top:7px!important;width:auto!important;background:none!important;color:#887b72!important;font-size:20px!important;margin:0!important;padding:4px 8px!important}.modal-body{text-align:left}.mini-form{display:flex;flex-direction:column;gap:9px;margin-top:12px}.mini-form label{font-size:9px;color:#675e57;display:flex;flex-direction:column;gap:4px}.mini-form input,.mini-form select,.mini-form textarea{width:100%;border:1px solid #e5ddd5;background:#faf8f5;padding:8px;font-size:9px;border-radius:2px}.mini-form textarea{height:55px;resize:none}.mini-form small{font-size:8px;color:#9a8e85;line-height:1.6}.form-errors{display:flex;flex-direction:column;gap:4px;background:#fff2e6;border-left:2px solid var(--error);color:#943c2c;padding:8px;font-size:8px;line-height:1.5}.form-errors b{font-size:9px;color:#7b2d22}.form-warning,.form-notice{font-size:8px;line-height:1.6;padding:8px;background:#fff2e6;color:#9b452e;border-left:2px solid var(--error)}.form-notice{background:#f3eee6;color:#77695f;border-color:var(--primary)}.upload-demo{border:1px dashed #d2b9a9!important;background:#fff8f2!important;color:var(--primary-dark)!important;padding:10px!important;margin:0!important;font-size:9px!important}.record-list{display:flex;flex-direction:column;gap:7px}.record-list button{border:1px solid #eee5de!important;background:#fff!important;color:var(--text)!important;margin:0!important;padding:10px!important;text-align:left!important}.record-list b,.record-list small{display:block}.record-list small{font-size:8px;color:#9a8d84;margin-top:4px}.status-item{background:#f8f4ee;padding:12px;display:flex;flex-direction:column;gap:7px}.status-item b{font:600 11px var(--serif)}.status-item small{font-size:8px;color:#8f8279}.submit-success{text-align:center;padding:20px 0;display:flex;flex-direction:column;align-items:center;gap:7px}.submit-success i{font-style:normal;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#e5f3e9;color:#2c8a4b;font-size:20px}.submit-success small{font-size:8px;color:#988b82}

.privacy-account-panel{display:flex;flex-direction:column;gap:10px}.privacy-account-panel h4{font:700 13px var(--serif);margin:2px 0 0}.privacy-action-grid{display:grid;grid-template-columns:1fr;gap:7px}.privacy-action-grid button{border:1px solid #eee5de!important;background:#fff!important;color:var(--text)!important;margin:0!important;padding:10px!important;text-align:left!important}.privacy-action-grid b,.privacy-action-grid small{display:block}.privacy-action-grid b{font:600 11px var(--serif)}.privacy-action-grid small{font-size:8px;color:#95887f;margin-top:4px;line-height:1.5}
/* admin prototype */
.admin-demo{background:#f4f1ec;min-height:100vh;display:grid;grid-template-columns:228px 1fr;font-size:13px}.admin-sidebar{height:100vh;position:sticky;top:0;background:#302b28;color:#cfc5bd;padding:20px 14px;display:flex;flex-direction:column}.admin-brand{display:flex;align-items:center;gap:10px;padding:0 8px 22px;border-bottom:1px solid #4a433f}.admin-brand img{width:38px}.admin-brand span,.admin-user span{display:flex;flex-direction:column}.admin-brand b{color:#fff;font:600 15px var(--serif)}.admin-brand small,.admin-user small{font-size:8px;color:#91867f;margin-top:3px}.admin-sidebar nav{display:flex;flex-direction:column;gap:4px;margin-top:18px}.admin-sidebar nav button{border:0;background:none;color:#bdb2aa;text-align:left;padding:11px 12px;border-radius:4px;font-size:12px;cursor:pointer}.admin-sidebar nav button.active,.admin-sidebar nav button:hover{background:var(--error);color:#fff}.admin-user{margin-top:auto;border-top:1px solid #4a433f;padding:16px 7px 0;display:flex;align-items:center;gap:9px}.admin-user>i{font-style:normal;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#5c514b;color:#fff}.admin-user b{color:#eee;font-size:10px}.admin-main{min-width:0;padding:0 30px 45px}.admin-main>header{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e2dcd5}.admin-main header h1{font:700 22px var(--serif);margin:0}.admin-main header p{font-size:9px;color:#92877f;margin:4px 0}.admin-main header>div:last-child{display:flex;align-items:center;gap:14px;font-size:10px}.admin-main header button{border:1px solid #d7cfc7;background:#fff;padding:7px 12px}.admin-view{display:none;padding-top:25px}.admin-view.active{display:block}.stat-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.stat-cards article{background:#fff;border:1px solid #ebe5df;padding:18px;display:flex;flex-direction:column}.stat-cards span{font-size:10px;color:#857970}.stat-cards b{font:700 28px var(--serif);margin:10px 0 4px}.stat-cards small{font-size:8px;color:#a1968f}.admin-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:15px;margin-top:16px}.admin-grid>section,.table-panel{background:#fff;border:1px solid #ebe5df;padding:18px}.panel-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.panel-title h2{font:600 15px var(--serif);margin:0}.panel-title button{border:0;background:none;color:var(--primary-dark);font-size:9px}.todo{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;padding:13px 0;border-top:1px solid #f0ebe6}.todo>i{font-style:normal;width:30px;height:30px;display:grid;place-items:center;background:#f8eae3;color:var(--primary-dark)}.todo b,.todo small{display:block}.todo b{font-size:10px}.todo small{font-size:8px;color:#9a9089;margin-top:4px}.todo button{border:1px solid #dfd4cc;background:#fff;color:var(--primary-dark);font-size:8px;padding:5px 8px}.content-chart{height:180px;display:flex;align-items:flex-end;justify-content:space-around;padding-top:25px}.content-chart div{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:7px;font-size:8px;color:#958981}.content-chart i{display:block;width:32px;background:linear-gradient(#bd684a,#993426)}.admin-primary{background:var(--primary-dark)!important;color:#fff!important;padding:8px 14px!important}.admin-filters{display:flex;gap:8px;margin:18px 0}.admin-filters input,.admin-filters select{border:1px solid #ddd5ce;padding:8px 10px;font-size:10px;background:#fff}.admin-filters input{width:260px}.admin-filters button{border:0;background:#403834;color:#fff;padding:0 16px;font-size:10px}.table-panel table{width:100%;border-collapse:collapse}.table-panel th,.table-panel td{padding:13px 10px;border-bottom:1px solid #eee9e4;text-align:left;font-size:9px}.table-panel th{background:#f7f4f0;color:#7c7068}.table-panel a{color:var(--primary-dark)}.tag{display:inline-block;padding:3px 7px;border-radius:10px;font-size:8px}.tag.green{background:#e5f4e9;color:#2b8050}.tag.orange{background:#fff0df;color:var(--primary-dark)}.empty-admin{text-align:center;background:#fff;border:1px solid #ebe5df;padding:100px 20px}.empty-admin i{font-style:normal;color:#a79b92;border:1px dashed #cfc5be;padding:8px 13px}.empty-admin h2{font:600 20px var(--serif);margin-top:25px}.empty-admin p{color:#958a82;font-size:10px}
.role-switch{display:flex;align-items:center;gap:7px;color:#7e736b;font-size:10px}.role-switch select{border:1px solid #d7cfc7;background:#fff;padding:7px 10px;font-size:10px;color:#403834}.admin-sidebar nav button[hidden]{display:none}
.admin-login-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:rgba(35,31,29,.72);backdrop-filter:blur(5px)}.admin-login-card{width:min(360px,calc(100vw - 40px));display:flex;flex-direction:column;gap:14px;padding:34px;background:#fff;box-shadow:0 22px 70px rgba(0,0,0,.28)}.admin-login-card img{width:52px}.admin-login-card h1{margin:0;font:700 24px var(--serif)}.admin-login-card p{margin:-6px 0 4px;color:#81766e}.admin-login-card label{display:flex;flex-direction:column;gap:6px;color:#625952}.admin-login-card input{padding:11px;border:1px solid #d8d0c9;font-size:14px}.admin-login-card button{padding:12px;border:0;background:var(--primary-dark);color:#fff}.admin-login-card small{min-height:18px;color:#a23f31}
@media(max-width:900px){.admin-demo{grid-template-columns:72px 1fr}.admin-sidebar{padding:15px 8px}.admin-brand span,.admin-sidebar nav button{font-size:0}.admin-brand img{width:42px}.admin-user span{display:none}.admin-sidebar nav button{font-size:16px;text-align:center}.stat-cards{grid-template-columns:1fr 1fr}.admin-grid{grid-template-columns:1fr}}
.api-status{font-size:9px;color:#8d8179;margin-bottom:12px}.api-status.connected{color:#2d8050}.submit-error{text-align:center;padding:20px 0;display:flex;flex-direction:column;align-items:center;gap:7px}.submit-error i{font-style:normal;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#fbe6df;color:#a43b28;font-size:20px}.submit-error small{font-size:8px;color:#988b82}.admin-module-panel{min-height:420px}
.admin-help-panel{background:#fff;border:1px solid #ebe1d8;padding:14px;margin:0 0 16px}.admin-help-panel[hidden]{display:none}.admin-help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.admin-help-grid article{background:#faf7f3;border:1px solid #eee4dc;padding:12px;display:flex;flex-direction:column;gap:6px;min-width:0}.admin-help-grid b{font:700 12px var(--serif);color:#3d342e}.admin-help-grid span{font-size:9px;color:#74685f;line-height:1.5;word-break:break-word}.admin-help-panel>button{margin-top:12px;border:1px solid #d7c7bb;background:#fff;color:var(--primary-dark);padding:7px 12px;font-size:10px}@media(max-width:900px){.admin-help-grid{grid-template-columns:1fr}}

/* v1.1 dynamic content/activity additions */
.filter-pills.muted{padding-top:0}.filter-pills.muted button{background:#fff;color:#82766d;border:1px solid #e7ddd4}.info-category-strip{display:flex;gap:6px;padding:0 13px 9px;overflow:auto}.info-category-strip span{white-space:nowrap;background:#fff4ec;color:var(--primary-dark);border:1px solid #f0d8ca;border-radius:16px;padding:5px 8px;font-size:8px}.mini-modal>div{max-height:86%;overflow:auto}.activity-detail-modal{text-align:left}.activity-detail-modal h4{font:700 15px/1.5 var(--serif);margin:10px 0}.activity-detail-modal dl{display:grid;grid-template-columns:66px 1fr;gap:8px 10px;margin:12px 0}.activity-detail-modal dt{font-size:10px;font-weight:700;color:#2f2a27}.activity-detail-modal dd{margin:0;font-size:10px;line-height:1.6;color:#80756d}.activity-detail-modal p{font-size:10px!important}.table-panel td small{color:#8f857d;font-size:8px}.admin-sidebar nav{overflow:auto}.admin-sidebar nav::-webkit-scrollbar{display:none}
.volunteer-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px}.volunteer-summary div{background:#fff;border-radius:5px;padding:12px 8px;text-align:center}.volunteer-summary span{display:block;font-size:8px;color:#8d8178}.volunteer-summary b{display:block;font:700 18px var(--serif);color:var(--primary-dark);margin-top:4px}.time-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}.elder-form input,.elder-form select,.elder-form textarea{font-size:15px!important;min-height:42px}.service-total{background:#fff4ec;border:1px solid #f0d8ca;border-radius:6px;padding:14px;margin-bottom:10px;text-align:left}.service-total b{display:block;font:700 22px var(--serif);color:var(--primary-dark)}.service-total span{font-size:9px;color:#82766d}.checkin-review-list{display:grid;gap:12px}.checkin-card{border:1px solid #eee2d8;background:#fffaf6;padding:15px;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.checkin-card b{display:block;font:600 14px var(--serif);margin:8px 0 5px}.checkin-card small{display:block;color:#897d75;font-size:10px}.checkin-card p{font-size:11px;line-height:1.7;color:#5d514a;margin:8px 0 0}.checkin-card em{display:block;color:#8d8179;font-size:10px;margin-top:6px;font-style:normal}.checkin-card footer{display:flex;gap:7px}.checkin-card footer button{border:0;background:var(--primary-dark);color:#fff;padding:8px 10px;font-size:10px}.checkin-card footer button+button{background:#6f625b}@media(max-width:900px){.checkin-card{grid-template-columns:1fr}.checkin-card footer{justify-content:flex-start;flex-wrap:wrap}.checkin-card footer button{min-width:96px}}
.level-card{background:linear-gradient(135deg,#fff8ef,#f0ddc8);border:1px solid #ead6c2;margin:12px;border-radius:6px;padding:14px}.level-card span{font-size:8px;color:#8b7b6d}.level-card b{display:block;font:700 18px var(--serif);color:var(--primary-dark);margin:5px 0}.level-card p{font-size:9px;color:#7c7068;margin:0 0 10px}.volunteer-profile-list{display:grid;gap:12px}.volunteer-profile-card{background:#fffaf6;border:1px solid #eee2d8;padding:16px}.volunteer-profile-card header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.volunteer-profile-card header b{display:block;font:700 15px var(--serif)}.volunteer-profile-card header small{font-size:9px;color:#8d8179}.volunteer-profile-card header span{background:#fff0df;color:var(--primary-dark);border-radius:14px;padding:5px 9px;font-size:10px;white-space:nowrap}.profile-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}.profile-metrics i{font-style:normal;background:#fff;border:1px solid #f0e7df;padding:10px;text-align:center}.profile-metrics b{display:block;font:700 20px var(--serif);color:var(--primary-dark)}.profile-metrics small{font-size:8px;color:#8d8179}.level-progress div{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:#8d8179}.level-progress em{font-style:normal;color:#6b5f57}.level-progress p{height:5px;background:#eee3da;margin:8px 0 0}.level-progress i{display:block;height:100%;background:var(--primary-dark)}.rule-panel{margin-top:14px;background:#fff;border:1px solid #eee2d8;padding:14px}.rule-panel h3{font:700 13px var(--serif);margin:0 0 8px}.rule-panel span{display:block;font-size:10px;color:#6d625a;line-height:1.8}@media(max-width:900px){.profile-metrics{grid-template-columns:repeat(2,1fr)}.volunteer-profile-card header{display:block}.volunteer-profile-card header span{display:inline-block;margin-top:8px}}
.volunteer-profile-card footer{margin-top:12px}.volunteer-profile-card footer button,.volunteer-detail-panel header button{border:1px solid #dac9b9;background:#fff;color:var(--primary-dark);padding:7px 10px;font-size:10px}.volunteer-detail-panel{background:#fff;border:1px solid #eadbd0;margin:12px 0;padding:16px}.volunteer-detail-panel>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid #f0e7df;padding-bottom:12px;margin-bottom:12px}.volunteer-detail-panel header b{display:block;font:700 16px var(--serif)}.volunteer-detail-panel header small{font-size:10px;color:#7d7168}.volunteer-detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:12px}.volunteer-detail-grid article{background:#fffaf6;border:1px solid #f0e4da;padding:12px}.volunteer-detail-panel h3{font:700 13px var(--serif);margin:0 0 10px}.detail-timeline-row{border-top:1px solid #efe5dc;padding:10px 0}.detail-timeline-row:first-of-type{border-top:0;padding-top:0}.detail-timeline-row b,.detail-timeline-row small,.detail-timeline-row p{display:block}.detail-timeline-row b{font-size:12px}.detail-timeline-row small{font-size:9px;color:#83776f;margin-top:4px}.detail-timeline-row p{font-size:10px;color:#635850;line-height:1.7;margin:6px 0 0}.volunteer-application-history{margin-top:12px;background:#f8f4ee;border:1px solid #eee2d8;padding:12px}.volunteer-application-history span{display:block;font-size:10px;color:#6d625a;line-height:1.8}@media(max-width:900px){.volunteer-detail-panel>header,.volunteer-detail-grid{display:block}.volunteer-detail-panel header button{margin-top:8px}.volunteer-detail-grid article+article{margin-top:12px}}
.admin-editor-form{background:#fffaf6;border:1px solid #eee2d8;padding:16px;margin:14px 0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid label,.checkbox-line{display:flex;flex-direction:column;gap:6px;font-size:10px;color:#71665e}.form-grid input,.form-grid select,.form-grid textarea{border:1px solid #ddd2c8;background:#fff;padding:9px 10px;font-size:11px;min-width:0}.form-grid textarea{min-height:74px;resize:vertical}.form-grid .wide,.checkbox-line{grid-column:1/-1}.checkbox-line{flex-direction:row;flex-wrap:wrap;align-items:center}.checkbox-line>span{width:100%;font-weight:700}.checkbox-line label{display:inline-flex;flex-direction:row;align-items:center;margin-right:12px}.form-actions{display:flex;align-items:center;gap:10px;margin-top:12px}.form-actions button{border:1px solid #d7c8ba;background:#fff;padding:8px 13px;font-size:10px}.form-actions span{font-size:10px;color:#8a7d73}.activity-admin-list{display:grid;gap:10px;margin-top:14px}.activity-admin-list article{background:#fff;border:1px solid #eee8e2;padding:13px}.activity-admin-list b{display:block;font:600 13px var(--serif)}.activity-admin-list span,.activity-admin-list small{display:block;color:#7d7168;font-size:10px;margin-top:5px}@media(max-width:900px){.form-grid{grid-template-columns:1fr}.form-actions{flex-wrap:wrap}.admin-editor-form{padding:12px}}
.editor-advice{display:grid;gap:4px;background:#fff;border:1px solid #ead9c8;border-left:4px solid var(--primary-dark);padding:12px;margin-bottom:14px}.editor-advice b{font:700 13px var(--serif);color:var(--primary-dark)}.editor-advice span{font-size:10px;color:#71665e;line-height:1.7}.form-grid small{font-size:9px;color:#9b8c81;line-height:1.6}.nested-template-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border-top:1px dashed #e0d0c2;padding-top:12px}.nested-template-fields .wide{grid-column:1/-1}.template-preview{background:#fff;border:1px solid #eee3da;padding:12px}.template-preview b{display:block;font:700 12px var(--serif);margin-bottom:10px}.template-wireframe{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.template-wireframe i{font-style:normal;border:1px solid #e5d8cc;background:#fff8f1;color:#806f63;min-height:38px;display:flex;align-items:center;justify-content:center;font-size:9px;text-align:center}.template-wireframe .cover{grid-column:1/-1;aspect-ratio:16/3;background:#f2e2d2}.template-wireframe .text{grid-column:span 2;background:#fff}.template-wireframe .image{grid-column:span 2;background:#f8eadc}.template-wireframe .footer{grid-column:1/-1;min-height:30px;background:#faf6f0}.project-admin-list{display:grid;gap:12px;margin-top:14px}.project-admin-list article{background:#fff;border:1px solid #eee2d8;padding:14px}.project-admin-list header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.project-admin-list b{display:block;font:700 14px var(--serif)}.project-admin-list small,.project-admin-list p{font-size:10px;color:#786d65;line-height:1.7}.project-admin-list footer{display:flex;gap:8px;margin-top:12px}.project-admin-list button{border:1px solid #dac9b9;background:#fff;padding:7px 10px;font-size:10px}@media(max-width:900px){.nested-template-fields,.template-wireframe{grid-template-columns:1fr}.template-wireframe .cover,.template-wireframe .text,.template-wireframe .image,.template-wireframe .footer{grid-column:1}.project-admin-list header{display:block}.project-admin-list header .tag{display:inline-flex;margin-top:8px}}
.split-config-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.config-section{min-width:0}.compact-config-form{margin-top:0}.config-admin-list{display:grid;gap:10px;margin-top:12px}.config-admin-list article{background:#fff;border:1px solid #eee2d8;padding:13px}.config-admin-list header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.config-admin-list b{display:block;font:700 13px var(--serif)}.config-admin-list small,.config-admin-list p{font-size:9px;color:#7d7168;line-height:1.7}.config-flags{display:flex;gap:8px;flex-wrap:wrap;margin:9px 0}.config-flags span{background:#faf3ec;border:1px solid #efe0d1;color:#806f63;padding:4px 7px;font-size:9px}.config-admin-list footer{display:flex;gap:7px;flex-wrap:wrap}.config-admin-list button{border:1px solid #dac9b9;background:#fff;padding:6px 9px;font-size:9px}@media(max-width:1000px){.split-config-panel{grid-template-columns:1fr}.config-admin-list header{display:block}.config-admin-list header .tag{display:inline-flex;margin-top:8px}}
.table-actions{display:flex;gap:6px;flex-wrap:wrap}.table-actions button{border:1px solid #dac9b9;background:#fff;padding:6px 8px;font-size:9px;color:#6e625a}.activity-admin-list article header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.activity-admin-list article header span{margin-top:4px}.activity-admin-list article header em{font-style:normal;white-space:nowrap}.activity-admin-list p{font-size:10px;color:#7d7168;line-height:1.7;margin:8px 0 0}.activity-admin-list footer{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.activity-admin-list footer button{border:1px solid #dac9b9;background:#fff;padding:7px 10px;font-size:10px}@media(max-width:900px){.table-actions{display:grid}.activity-admin-list article header{display:block}.activity-admin-list article header em{display:inline-flex;margin-top:8px}}
.review-summary{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#fffaf6;border:1px solid #eee2d8;padding:12px;margin-bottom:12px}.review-summary b{font:700 14px var(--serif)}.review-summary span{font-size:10px;color:#7d7168}.empty-state{background:#fff;border:1px dashed #ded0c3;color:#8b7f76;padding:18px;text-align:center;font-size:11px}.checkin-card footer button{border:1px solid #dac9b9;background:#fff;padding:7px 10px;font-size:10px;margin-right:7px}.checkin-card em{display:block;margin-top:8px;color:#9b5a2c;font-style:normal;font-size:10px;line-height:1.6}@media(max-width:900px){.review-summary{display:block}.review-summary span{display:block;margin-top:6px}.checkin-card footer button{margin:4px 4px 0 0}}
.file-admin-list{display:grid;gap:12px;margin-top:14px}.file-admin-list article{background:#fff;border:1px solid #eee2d8;padding:14px}.file-admin-list header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.file-admin-list b{display:block;font:700 14px var(--serif)}.file-admin-list small,.file-admin-list p{font-size:10px;color:#786d65;line-height:1.7}.file-admin-list footer{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.file-admin-list footer button{border:1px solid #dac9b9;background:#fff;padding:7px 10px;font-size:10px}@media(max-width:900px){.file-admin-list header{display:block}.file-admin-list header .tag{display:inline-flex;margin-top:8px}}
.asset-library-panel{margin-top:18px;border-top:1px solid #eadbd0;padding-top:18px}.asset-admin-list{display:grid;gap:12px;margin-top:14px}.asset-admin-list article{background:#fffaf6;border:1px solid #eee2d8;padding:14px}.asset-admin-list header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.asset-admin-list b{display:block;font:700 14px var(--serif)}.asset-admin-list small,.asset-admin-list p{font-size:10px;color:#786d65;line-height:1.7}.asset-admin-list footer{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.asset-admin-list footer button{border:1px solid #dac9b9;background:#fff;padding:7px 10px;font-size:10px}@media(max-width:900px){.asset-admin-list header{display:block}.asset-admin-list header .tag{display:inline-flex;margin-top:8px}}
.request-form{margin-top:24px;background:#fff;border:1px solid #eee2d8}.consent-line{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:8px;font-size:11px!important;line-height:1.7}.consent-line input{width:auto!important;margin-top:3px}
.registration-admin-list{display:grid;gap:10px;margin-top:12px}.registration-admin-list article{background:#fff;border:1px solid #eee2d8;padding:13px}.registration-admin-list header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.registration-admin-list b{display:block;font:700 13px var(--serif)}.registration-admin-list small,.registration-admin-list p{font-size:10px;color:#786d65;line-height:1.7}.registration-admin-list footer{display:flex;gap:8px;flex-wrap:wrap}.registration-admin-list footer button{border:1px solid #dac9b9;background:#fff;padding:7px 10px;font-size:10px}@media(max-width:900px){.registration-admin-list header{display:block}.registration-admin-list header .tag{display:inline-flex;margin-top:8px}}
.audit-log-list{display:grid;gap:10px;margin-top:12px}.audit-log-list article{background:#fff;border:1px solid #eee2d8;padding:14px}.audit-log-list header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.audit-log-list b{display:block;font:700 13px var(--serif)}.audit-log-list small,.audit-log-list p,.audit-log-list footer{font-size:10px;color:#786d65;line-height:1.7}.audit-log-list p{margin:8px 0}.audit-log-list footer{display:flex;gap:10px;flex-wrap:wrap}.audit-log-list footer span{background:#faf3ec;border:1px solid #efe0d1;padding:4px 7px}@media(max-width:900px){.audit-log-list header{display:block}.audit-log-list header .tag{display:inline-flex;margin-top:8px}}
.detail-body{padding:54px 0 80px}.detail-paper{max-width:880px;margin:auto}.detail-cover{height:260px;background:linear-gradient(135deg,var(--primary-light),var(--primary-dark)) center/cover no-repeat;border-radius:2px;margin-bottom:26px}.detail-paper .lead{font-size:18px;color:#5f554d;line-height:1.9}.detail-paper p{line-height:2;color:#625850}.detail-meta{background:#fffaf5;border:1px solid #eadfd3;padding:20px;margin:28px 0}.detail-meta dl{display:grid;grid-template-columns:120px 1fr;gap:12px;margin:0}.detail-meta dt{font-weight:700;color:#3f3731}.detail-meta dd{margin:0;color:#75695f}.detail-image-placeholder{min-height:120px;background:#f4eadf;border:1px dashed #d8c5b4;color:#8a7667;display:flex;align-items:center;justify-content:center;font-size:13px}@media(max-width:700px){.detail-cover{height:180px}.detail-meta dl{grid-template-columns:1fr}.detail-meta dt{margin-top:8px}.detail-paper .lead{font-size:15px}}
.activity-card-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0 20px 12px;color:#756b63;font-size:11px}.activity-card-meta span{background:#faf6f0;padding:6px 8px}.activity-card-meta .activity-status{color:#8f5127}.activity-card-meta .activity-status.open{background:#e8f5eb;color:#236844}.detail-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:26px 0}.detail-actions span{font-size:12px;color:#756b63}.activity-status-notice{border-left:4px solid #b06e18;background:#fff5e8;color:#754818;padding:14px 16px;margin:26px 0}.activity-form-group{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:1px solid #eadfd3;background:#fff;padding:16px}.activity-form-group>h3{grid-column:1/-1;margin:0 0 4px;font:700 15px var(--serif);color:var(--primary-dark)}.activity-form-group label.wide{grid-column:1/-1}@media(max-width:700px){.detail-cover{height:180px}.detail-meta dl{grid-template-columns:1fr}.detail-meta dt{margin-top:8px}.detail-paper .lead{font-size:15px}.activity-card-meta,.activity-form-group{grid-template-columns:1fr}}

/* v1.1 admin pagination and batch review */
.paging-summary{white-space:nowrap;color:#9b6a3e!important}.batch-actions{display:flex;gap:8px;flex-wrap:wrap;background:#fff;border:1px solid #eee2d8;border-left:4px solid var(--primary);padding:10px 12px;margin:0 0 12px}.batch-actions button{border:1px solid #d6c2b2;background:#fff8f1;color:#8d442d;padding:7px 10px;font-size:10px}.batch-actions button:first-child{background:var(--primary-dark);border-color:var(--primary-dark);color:#fff}.admin-pager{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:12px;font-size:10px;color:#7d7168}.admin-pager button{border:1px solid #dac9b9;background:#fff;padding:7px 10px;font-size:10px}.admin-pager button:disabled{opacity:.45}.review-summary .paging-summary{margin-left:auto}@media(max-width:900px){.batch-actions{display:grid;grid-template-columns:1fr}.admin-pager{justify-content:center}.review-summary .paging-summary{margin-left:0}}

/* v1.1 site settings */
.site-links{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px}
.site-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:78px;padding:16px 18px;border:1px solid #ecdcd4;border-radius:6px;background:#fff;color:var(--text);box-shadow:0 10px 28px rgba(63,38,28,.08)}
.site-links a span{font-size:13px;color:var(--muted)}
.site-links a b{font-size:16px;text-align:right}
.site-config-list{display:grid;gap:12px;margin-top:14px}
.site-config-list article{background:#fff;border:1px solid #eee2d8;padding:13px}
.site-config-list header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.site-config-list textarea{min-height:140px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.site-config-list p{font-size:9px;color:#7d7168}
.site-config-list footer{display:flex;gap:7px;flex-wrap:wrap}
.site-config-list button{border:1px solid #dac9b9;background:#fff;padding:6px 9px;font-size:9px}
.site-config-list footer span{align-self:center;color:#8a5a38;font-size:9px}
@media(max-width:760px){.site-links{grid-template-columns:1fr}}
@media(max-width:1000px){.site-config-list header{display:block}.site-config-list header .tag{display:inline-flex;margin-top:8px}}
.todo-count{white-space:nowrap;background:#fff5ec;border:1px solid #efd8c8;color:#9a3a27;padding:5px 8px;font-size:8px}.operations-panel{margin-top:16px;background:#fff;border:1px solid #ebe5df;padding:18px}.operations-panel .panel-title span{font-size:10px;color:#7d7168}.operations-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.operations-grid article{border:1px solid #eee6dd;background:#fffaf6;padding:12px;min-height:86px;display:flex;flex-direction:column;justify-content:space-between}.operations-grid span{font-size:9px;color:#7d7168}.operations-grid b{font:700 20px var(--serif);color:#302b28}.operations-grid small{font-size:8px;color:#9a9089}@media(max-width:1100px){.operations-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.operations-grid{grid-template-columns:repeat(2,1fr)}}
/* 后台管理端主题：翠意绿（与官网金色区分，避免共用 --red 变量冲突） */
.admin-sidebar{background:var(--primary-dark)}
.admin-sidebar nav button.active,.admin-sidebar nav button:hover{background:var(--primary);color:#fff}
.admin-help-panel>button{color:var(--primary)}
.checkin-card footer button{background:var(--primary)}
.volunteer-summary b,.level-card b,.profile-metrics b,.service-total b{color:var(--primary)}
.level-progress i{background:var(--primary)}
.rule-panel{border-left-color:var(--primary)}
.rule-panel b{color:var(--primary)}
.editor-advice{border-left-color:var(--primary)}
.editor-advice b{color:var(--primary)}
.volunteer-profile-card footer button,.volunteer-detail-panel header button{color:var(--primary)}
.batch-actions button:first-child{background:var(--primary);border-color:var(--primary);color:#fff}
.admin-pager button:hover{border-color:var(--primary);color:var(--primary)}

.commendation-toolbar{display:flex;align-items:center;gap:14px;margin:0 0 16px}.commendation-year{display:flex;align-items:center;gap:6px;font-size:10px;color:#857970}.commendation-year select{border:1px solid #ddd5ce;padding:7px 10px;font-size:10px;background:#fff}
[data-commendation-body]{background:#fff;border:1px solid #ebe5df;padding:18px;margin-top:14px}
[data-commendation-body] table{width:100%;border-collapse:collapse}
[data-commendation-body] th,[data-commendation-body] td{padding:13px 10px;border-bottom:1px solid #eee9e4;text-align:left;font-size:9px}
[data-commendation-body] th{background:#f7f4f0;color:#7c7068}
[data-commendation-body] b{color:#3d342e}
[data-commendation-body] .tag.orange{background:#fff0df;color:var(--primary-dark)}
[data-badge-list]{background:#fff;border:1px solid #ebe5df;padding:18px;margin-top:14px}
[data-badge-list] table{width:100%;border-collapse:collapse}
[data-badge-list] th,[data-badge-list] td{padding:13px 10px;border-bottom:1px solid #eee9e4;text-align:left;font-size:9px}
[data-badge-list] th{background:#f7f4f0;color:#7c7068}
[data-badge-list] b{color:#3d342e}
.admin-link{border:0;background:none;color:var(--primary-dark);font-size:9px;cursor:pointer;padding:0 5px}
.admin-link.danger{color:#a43b28}
.user-role-tags{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.user-admin-list{display:grid;gap:12px}.user-admin-card{border:1px solid #eee2d8;background:#fff;padding:14px}.user-admin-card>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.user-admin-card>header b,.user-admin-card>header small{display:block}.user-admin-card>header b{font:700 14px var(--serif)}.user-admin-card>header small{margin-top:4px;color:#81756c;font-size:9px}.user-admin-card .admin-editor-form{margin:12px 0 0}.user-admin-card .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.user-admin-card .account-note{margin:10px 0 0;color:#7d7168;font-size:9px;line-height:1.7}.user-admin-card code{font-size:9px;color:#73594e;word-break:break-all}@media(max-width:1000px){.user-admin-card .form-grid{grid-template-columns:1fr}.user-admin-card>header{display:block}.user-admin-card>header .tag{display:inline-block;margin-top:8px}}
.admin-demo{font-size:14px}.admin-sidebar nav button,.admin-main button,.admin-main input,.admin-main select,.admin-main textarea{font-size:14px}.admin-main table th,.admin-main table td{font-size:13px;line-height:1.55}.admin-main table small,.admin-main article small,.admin-main .editor-advice span,.admin-main .form-grid small,.admin-main .review-summary span,.admin-main .config-admin-list p,.admin-main .config-admin-list small,.admin-main .registration-admin-list p,.admin-main .registration-admin-list small,.admin-main .checkin-card small,.admin-main .checkin-card em{font-size:12px}.admin-main .form-grid label,.admin-main .checkbox-line{font-size:13px}.admin-main .form-grid input,.admin-main .form-grid select,.admin-main .form-grid textarea{font-size:14px;padding:11px 12px;min-height:44px}.admin-main .form-actions button,.admin-main .table-actions button,.admin-main .activity-admin-list footer button,.admin-main .config-admin-list button,.admin-main .registration-admin-list footer button{font-size:13px;min-height:40px}.content-workbench{max-width:1180px}.rich-editor-shell{border:1px solid #ddd2c8;background:#fff}.rich-editor-toolbar{display:flex;gap:7px;flex-wrap:wrap;padding:10px;border-bottom:1px solid #eee4da;background:#faf7f3}.rich-editor-toolbar button{border:1px solid #d7c8ba;background:#fff;padding:8px 11px}.rich-editor{min-height:360px;padding:24px;font-size:16px;line-height:1.9;outline:none}.rich-editor:focus{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--primary) 35%,transparent)}.rich-editor img,.preview-rich-body img{max-width:100%;height:auto}.markdown-editor{min-height:360px!important;font:14px/1.8 ui-monospace,SFMono-Regular,Menlo,monospace!important}.rich-editor-shell>small,.media-link-editor>small{display:block;padding:10px 12px;background:#fffaf6}.media-link-editor{border:1px solid #e7ded5;padding:14px;background:#fff}.media-link-editor .panel-title h3{font-size:15px}.media-link-row{display:grid;grid-template-columns:minmax(140px,.7fr) minmax(260px,1.6fr) auto;gap:8px;margin-top:8px}.media-link-row input{width:100%}.content-preview-dialog{width:min(1180px,94vw);height:min(850px,92vh);border:0;padding:0;box-shadow:0 30px 90px #0005}.content-preview-dialog::backdrop{background:#211b1880}.content-preview-dialog>header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 20px;border-bottom:1px solid #e7ded5;background:#fff}.content-preview-dialog>header b,.content-preview-dialog>header span{display:block}.content-preview-dialog>header b{font-size:17px}.content-preview-dialog>header span{font-size:12px;color:#756b63;margin-top:4px}.content-preview-dialog nav{display:flex;gap:8px}.content-preview-dialog nav button{border:1px solid #d7c8ba;background:#fff;padding:9px 13px}.content-preview-dialog nav button.active{background:var(--primary-dark);color:#fff}.content-preview-stage{height:calc(100% - 75px);overflow:auto;background:#eeeae6;padding:30px}.content-preview-stage article{width:min(960px,100%);min-height:100%;margin:auto;background:#fff;padding:54px 64px;box-shadow:0 8px 30px #0001;transition:.2s}.content-preview-stage.mobile article{width:390px;max-width:100%;padding:28px 22px}.content-preview-stage h1{font:700 30px/1.45 var(--serif)}.content-preview-stage.mobile h1{font-size:23px}.preview-summary{font-size:15px;color:#746960;line-height:1.8;border-bottom:1px solid #eee5dc;padding-bottom:18px}.preview-rich-body{font-size:16px;line-height:1.9;color:#3f3935}.activity-report-panel{margin:20px 0;background:#fff;border:1px solid #e7ded5;padding:20px}.activity-report-panel>header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid #eee5dc;padding-bottom:16px}.activity-report-panel>header span{color:var(--primary);font-size:12px;font-weight:700}.activity-report-panel>header h2{margin:5px 0;font:700 22px var(--serif)}.activity-report-panel>header p{margin:0;color:#746960;font-size:13px}.activity-report-panel>header>div:last-child{display:flex;gap:8px}.activity-report-panel button{border:1px solid #d7c8ba;background:#fff;padding:8px 11px}.report-metrics{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:18px 0}.report-metrics article{background:#fffaf6;border:1px solid #eee2d8;padding:14px}.report-metrics span{font-size:12px;color:#7d7168}.report-metrics b{display:block;font:700 23px var(--serif);margin-top:8px;color:var(--primary-dark)}.report-metrics b small{font:12px var(--sans)}.report-table-wrap{overflow:auto}.report-table-wrap table{min-width:920px;width:100%;border-collapse:collapse}.report-table-wrap th,.report-table-wrap td{border-bottom:1px solid #eee7e0;padding:12px;text-align:left}.report-table-wrap td b,.report-table-wrap td small{display:block}.report-table-wrap td input{width:90px;padding:7px}.report-history{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid #eee5dc}.report-history span{background:#faf3ec;padding:6px 9px;font-size:12px}.category-admin-table{overflow:auto;margin-top:14px}.category-admin-table table{width:100%;min-width:860px;border-collapse:collapse;background:#fff}.category-admin-table th,.category-admin-table td{padding:14px 12px;border-bottom:1px solid #eee7e0;text-align:left}.category-admin-table td b,.category-admin-table td small{display:block}.category-admin-table td small{margin-top:4px;color:#7d7168}@media(max-width:900px){.admin-main table th,.admin-main table td{font-size:14px}.admin-main table small,.admin-main article small{font-size:12px}.admin-main button,.admin-main input,.admin-main select,.admin-main textarea{min-height:44px;font-size:16px}.media-link-row{grid-template-columns:1fr}.content-preview-dialog>header,.activity-report-panel>header{display:block}.content-preview-dialog nav,.activity-report-panel>header>div:last-child{margin-top:12px;flex-wrap:wrap}.content-preview-stage{padding:12px}.content-preview-stage article{padding:26px 20px}.report-metrics{grid-template-columns:repeat(2,1fr)}}
.published-rich-body{font-size:16px;line-height:1.95;color:#4f4741}.published-rich-body img{display:block;max-width:100%;height:auto;margin:22px auto}.published-rich-body h2,.published-rich-body h3{font-family:var(--serif);color:#312b27;margin-top:1.6em}.published-rich-body a{color:var(--primary-dark);text-decoration:underline}.published-media-links{margin:28px 0;padding:18px;background:#fffaf5;border:1px solid #eadfd3}.published-media-links h3{font:700 17px var(--serif);margin:0 0 12px}.published-media-links a{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid #eee2d8}.published-media-links a:first-of-type{border-top:0}.published-media-links span{color:var(--primary-dark);white-space:nowrap}
@media(max-width:900px){.admin-main button{min-height:44px!important}.admin-main input,.admin-main select,.admin-main textarea{box-sizing:border-box}.admin-filters{flex-wrap:wrap}.admin-filters input{width:100%;max-width:100%}.admin-filters select,.admin-filters button{min-width:0;flex:1 1 120px}.admin-view,.admin-module-panel{min-width:0}}

/* v1.2 responsive admin workspace */
.admin-menu-toggle,.admin-sidebar-close,.admin-sidebar-scrim{display:none}
.admin-heading{display:flex;align-items:center;gap:12px;min-width:0}
.admin-header-actions{display:flex;align-items:center;gap:14px}
.admin-filters[hidden]{display:none!important}
.activity-sort-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 16px;padding:10px 12px;background:#f7faf8;border:1px solid var(--admin-line,#dfe9e3);border-radius:10px}.activity-sort-controls>span{font-weight:700;color:#53655c;margin-right:2px}.activity-sort-controls button{border:1px solid #cfdcd4;background:#fff;color:#3f5548;border-radius:8px;padding:8px 12px;cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease}.activity-sort-controls button:hover{border-color:var(--primary);color:var(--primary-dark)}.activity-sort-controls button:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 28%,transparent);outline-offset:2px}.activity-sort-controls button.active{background:var(--primary);border-color:var(--primary);color:#fff}.activity-cover-uploader{padding:14px;border:1px solid #dfe8e2;border-radius:10px;background:#f8fbf9}.activity-cover-preview{display:flex;align-items:center;gap:12px;min-height:72px;padding:10px;background:#fff;border:1px solid #e1e8e3;border-radius:8px}.activity-cover-preview img{width:120px;height:76px;object-fit:cover;border-radius:6px}.activity-cover-preview img[hidden]{display:none}.activity-cover-preview span{font-size:12px;color:#58675e;line-height:1.55}.activity-cover-actions{display:flex;gap:8px;flex-wrap:wrap}.activity-cover-actions button{border:1px solid #cfdcd4;background:#fff;color:#344b3d;border-radius:8px;padding:9px 13px;cursor:pointer}.activity-cover-actions button:hover{border-color:var(--primary);color:var(--primary-dark)}.activity-cover-actions button:disabled{opacity:.55;cursor:wait}.role-permission-matrix{margin:14px 0;padding:16px;background:#f7faf8;border:1px solid var(--admin-line,#dfe9e3);border-radius:12px}.role-permission-matrix h3{margin:0 0 12px;font:700 16px var(--serif);color:var(--primary-dark)}.role-permission-matrix>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.role-permission-matrix article{padding:12px;background:#fff;border:1px solid #e0e8e3;border-radius:9px}.role-permission-matrix b,.role-permission-matrix span{display:block}.role-permission-matrix b{font-size:13px;color:#30473a}.role-permission-matrix span,.role-permission-matrix>small{font-size:12px;line-height:1.6;color:#5d6c63}.role-permission-matrix>small{display:block;margin-top:10px}.standalone-admin-create{margin:14px 0;border:1px solid #d9e4dd;border-radius:12px;background:#fff}.standalone-admin-create summary{padding:13px 16px;font-weight:700;color:var(--primary-dark);cursor:pointer}.standalone-admin-create[open] summary{border-bottom:1px solid #e6ece8}.standalone-admin-create .admin-editor-form{margin:0;border:0;background:#fbfdfc}.password-reset-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1fr) auto;align-items:end;gap:12px}.password-reset-form>div b,.password-reset-form>div small{display:block}.password-reset-form>div small{margin-top:4px;color:#65736a}.password-reset-form>label{display:flex;flex-direction:column;gap:6px;color:#5f6c64}.password-reset-form input{border:1px solid #ddd2c8;background:#fff;padding:9px 10px;min-height:44px}.password-reset-form button{border:1px solid #d7c8ba;background:#fff;padding:9px 12px;min-height:44px}.password-reset-form>span{grid-column:1/-1;color:#53655c}.password-reset-form code,.standalone-admin-create code{user-select:all}
@media(max-width:900px){.role-permission-matrix>div{grid-template-columns:1fr}.password-reset-form{grid-template-columns:1fr}.activity-cover-preview{align-items:flex-start}.activity-cover-preview img{width:96px;height:64px}}
@media(prefers-reduced-motion:reduce){.activity-sort-controls button{transition:none}}
.admin-main .activity-admin-list footer,.admin-main .project-admin-list footer,.admin-main .config-admin-list footer,.admin-main .file-admin-list footer,.admin-main .asset-admin-list footer,.admin-main .registration-admin-list footer,.admin-main .checkin-card footer,.admin-main .user-admin-card footer{background:transparent;color:inherit;padding:0}
.activity-workspace-tabs{display:flex;gap:8px;margin:0 0 18px;padding:6px;background:#edf3ef;border:1px solid #dce8e1;position:sticky;top:8px;z-index:8}
.activity-workspace-tabs button{border:0;background:transparent;color:#53655c;padding:10px 16px;min-height:42px;font-weight:600;cursor:pointer}
.activity-workspace-tabs button.active{background:var(--primary);color:#fff;box-shadow:0 5px 14px #1d5c4224}
.activity-workspace-panel[hidden]{display:none!important}
.activity-workspace-panel{min-width:0}
.activity-workspace-intro{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px;padding:16px 18px;background:#f7faf8;border:1px solid #dfe9e3}
.activity-workspace-intro h3{font:700 17px var(--serif);margin:0 0 5px;color:var(--primary-dark)}
.activity-workspace-intro p{font-size:13px;line-height:1.7;color:#6c786f;margin:0}
.activity-workspace-intro button{border:1px solid var(--primary);background:#fff;color:var(--primary);padding:9px 14px;white-space:nowrap}
.activity-form-group.welfare-group{background:#f4faf6;border-color:#d6e8dc}
.activity-form-group.welfare-group>h3{display:flex;align-items:center;justify-content:space-between;gap:12px}
.activity-form-group.welfare-group>h3 small{font:500 12px var(--sans);color:#668072}
.activity-rule-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.activity-rule-summary>div{padding:12px 14px;background:#faf8f5;border:1px solid #ece4dc}
.activity-rule-summary b,.activity-rule-summary span{display:block}
.activity-rule-summary b{font-size:13px;margin-bottom:5px}
.activity-rule-summary span{font-size:12px;line-height:1.65;color:#70665f}
.activity-rule-summary .welfare{background:#f4faf6;border-color:#d8e9de}
.responsible-account-field>span{font-weight:700;color:#32493d}.responsible-account-field>button{align-self:flex-start;border:1px solid var(--primary);background:#fff;color:var(--primary);padding:9px 12px}.responsible-account-row{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(130px,.7fr) auto;gap:8px;margin-top:8px}.responsible-account-row button{border:1px solid #dccdc2;background:#fff;color:#8d4e3d;padding:8px 12px}
.activity-detail-sections{display:grid;gap:14px;margin-top:18px}.activity-detail-sections>section{border:1px solid #e2e9e4;background:#fff;padding:18px}.activity-detail-sections h3{margin:0 0 14px;font:700 16px var(--serif);color:var(--primary-dark)}.activity-detail-sections dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}.activity-detail-sections dl>div{padding:12px 14px;background:#f7faf8}.activity-detail-sections dt{font-size:12px;color:#718077;margin-bottom:5px}.activity-detail-sections dd{margin:0;font-size:14px;line-height:1.65;color:#35453c}.activity-people-list{display:flex;gap:8px;flex-wrap:wrap}.activity-people-list>span{display:flex!important;align-items:center;gap:7px;margin:0!important;padding:9px 12px;background:#f3f8f5;border:1px solid #dce8e1;color:#344a3e!important;font-size:13px!important}.activity-people-list small{font-size:11px!important;color:#75837b!important}.activity-limit-editor{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid #e7ece8}.activity-limit-editor label{display:flex;align-items:center;gap:7px;font-size:13px;color:#5f6f66}.activity-limit-editor input{width:92px;min-height:40px;border:1px solid #ccd9d1;padding:8px}.activity-limit-editor button{min-height:40px;border:1px solid var(--primary);background:#fff;color:var(--primary);padding:8px 13px}.activity-rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.activity-rule-grid article{border:1px solid #e1e9e4;background:#f7faf8;padding:14px}.activity-rule-grid b,.activity-rule-grid span{display:block}.activity-rule-grid b{font-size:14px;color:#30463a;margin-bottom:8px}.activity-rule-grid span{font-size:12px!important;line-height:1.7;color:#66766d!important;margin:0!important}.activity-detail-sections>section>p{margin:0;font-size:14px;color:#405047}.activity-detail-actions{display:flex!important;align-items:center;justify-content:space-between;gap:12px;margin-top:16px!important;padding:16px 0 0!important;border-top:1px solid #dde6e0}.activity-detail-actions>div{display:flex;gap:8px;flex-wrap:wrap}.activity-detail-actions button{min-height:42px;padding:9px 14px!important;border:1px solid #cbd8d0!important;background:#fff!important;color:#365344!important}.activity-detail-actions .admin-primary{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}.activity-detail-actions .danger{color:#a33e2c!important;border-color:#e4bdb4!important;background:#fff8f6!important}
.admin-sidebar-scrim{border:0;padding:0}

@media(max-width:760px){
  .admin-demo{display:block;min-width:0}
  .admin-sidebar{display:flex;position:fixed;z-index:60;inset:0 auto 0 0;width:min(86vw,320px);height:100dvh;padding:14px;transform:translateX(-105%);transition:transform .22s ease;box-shadow:18px 0 48px #10271d52}
  .admin-demo.admin-menu-open .admin-sidebar{transform:translateX(0)}
  .admin-sidebar-close{display:block;align-self:flex-end;border:1px solid #ffffff55;background:#ffffff10;color:#fff;min-height:42px;padding:8px 12px;margin-bottom:10px}
  .admin-sidebar .admin-brand span,.admin-sidebar .admin-user span{display:flex}
  .admin-sidebar nav button{font-size:15px;text-align:left;min-height:46px;padding:12px 14px}
  .admin-sidebar-scrim{display:block;position:fixed;z-index:55;inset:0;background:#10271d80;opacity:0;pointer-events:none;transition:opacity .22s ease}
  .admin-demo.admin-menu-open .admin-sidebar-scrim{opacity:1;pointer-events:auto}
  .admin-main{padding:0 14px 36px;width:100%;min-width:0}
  .admin-main>header{height:auto;min-height:72px;display:grid;grid-template-columns:1fr;gap:10px;padding:10px 0 12px;position:sticky;top:0;z-index:30;background:#f4f1ec}
  .admin-heading{width:100%}
  .admin-heading>div{min-width:0}
  .admin-main header h1{font-size:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .admin-main header p{display:none}
  .admin-menu-toggle{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--primary)!important;background:#fff!important;color:var(--primary);min-width:64px;min-height:44px;padding:8px 12px!important}
  .admin-header-actions{display:grid!important;grid-template-columns:1fr 1.4fr 1fr;gap:7px!important;width:100%;font-size:12px!important}
  .admin-header-actions>button,.admin-header-actions .role-switch{min-width:0;width:100%}
  .admin-header-actions>button{padding:8px 6px!important}
  .role-switch{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:5px}
  .role-switch select{width:100%;min-width:0;padding:7px 5px!important;font-size:14px!important}
  .admin-view{padding-top:14px}
  .admin-grid,.stat-cards{grid-template-columns:1fr 1fr}
  .admin-grid{gap:12px}
  .table-panel,.admin-grid>section,.operations-panel{padding:14px}
  .panel-title{align-items:flex-start;gap:10px}
  .panel-title h2{font-size:17px}
  .activity-workspace-tabs{top:122px;display:grid;grid-template-columns:repeat(2,1fr);gap:5px;margin:0 -2px 14px;padding:5px}
  .activity-workspace-tabs button{font-size:14px!important;padding:8px 4px;min-width:0}
  .activity-workspace-intro{display:block;padding:14px}
  .activity-workspace-intro button{width:100%;margin-top:12px}
  .admin-editor-form{padding:12px;margin:0}
  .activity-form-group{padding:14px;gap:10px}
  .activity-form-group.welfare-group>h3{display:block}
  .activity-form-group.welfare-group>h3 small{display:block;margin-top:5px;line-height:1.6}
  .activity-rule-summary{grid-template-columns:1fr}
  .responsible-account-row{grid-template-columns:1fr}.responsible-account-row button{width:100%}.activity-detail-sections>section{padding:14px}.activity-detail-sections dl,.activity-rule-grid{grid-template-columns:1fr}.activity-limit-editor{align-items:stretch}.activity-limit-editor label{justify-content:space-between}.activity-detail-actions{display:grid!important}.activity-detail-actions>div{display:grid;grid-template-columns:1fr 1fr}.activity-detail-actions button{width:100%}.activity-detail-actions>div:last-child button:last-child{grid-column:1/-1}
  .admin-editor-form .form-actions{position:sticky;bottom:8px;z-index:12;background:#fff;border:1px solid #dbe6df;box-shadow:0 8px 28px #173a2a24;padding:10px;margin:12px -4px -4px}
  .admin-editor-form .form-actions button{width:100%}
  .activity-admin-list article{padding:14px}
  .activity-admin-list footer{display:grid;grid-template-columns:1fr 1fr}
  .activity-admin-list footer button{width:100%;min-width:0}
  .report-table-wrap{margin:0 -4px;overscroll-behavior-x:contain}
  .report-table-wrap:before{content:'表格可左右滑动查看全部字段';display:block;position:sticky;left:0;padding:8px 4px;color:#6d7c73;font-size:12px}
}

@media(max-width:430px){
  .admin-grid,.stat-cards,.operations-grid{grid-template-columns:1fr}
  .admin-header-actions{grid-template-columns:1fr 1fr}
  .admin-header-actions .role-switch{grid-column:1/-1;grid-row:1}
  .activity-workspace-tabs{top:166px}
  .activity-admin-list footer{grid-template-columns:1fr}
}

/* Native scrolling and dashboard action alignment */
html{scroll-behavior:auto}
body{overflow-y:auto;overscroll-behavior-y:auto}
.admin-demo,.admin-main,.admin-view,.content-workbench{scroll-behavior:auto}
.todo{grid-template-columns:32px minmax(0,1fr) auto;column-gap:12px}
.todo-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;white-space:nowrap}
.todo-actions .todo-count{display:inline-flex;align-items:center;min-height:34px;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:700}
.todo-actions button{display:inline-flex;align-items:center;justify-content:center;min-width:74px;min-height:34px;border:1px solid var(--primary-dark);border-radius:999px;background:var(--primary-dark);color:#fff;font-size:12px;font-weight:700;padding:7px 14px;cursor:pointer;transition:background .16s ease,box-shadow .16s ease,transform .16s ease}
.todo-actions button:hover{background:var(--primary);box-shadow:0 6px 16px color-mix(in srgb,var(--primary-dark) 20%,transparent);transform:translateY(-1px)}
.todo-actions button:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 30%,transparent);outline-offset:2px}

@media(max-width:620px){
  .todo{grid-template-columns:32px minmax(0,1fr)}
  .todo-actions{grid-column:2;justify-content:flex-start;flex-wrap:wrap}
}

/* Form-based site settings */
.site-config-card{background:#fff;border:1px solid #dfe7e1;box-shadow:0 8px 24px #183d2b0a}
.site-config-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid #edf1ee}
.site-config-card>header b,.site-config-card>header small{display:block}
.site-config-card>header b{font:700 17px var(--serif);color:var(--primary-dark)}
.site-config-card>header small{margin-top:6px;font-size:12px;line-height:1.65;color:#6f7b73}
.site-setting-switch{display:inline-flex!important;align-items:center;gap:9px;white-space:nowrap;cursor:pointer}
.site-setting-switch input{width:42px!important;height:24px!important;min-height:0!important;appearance:none;border:0!important;border-radius:999px;background:#c9d0cc;position:relative;padding:0!important;transition:.18s}
.site-setting-switch input:after{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 7px #0003;transition:.18s}
.site-setting-switch input:checked{background:var(--primary)}
.site-setting-switch input:checked:after{transform:translateX(18px)}
.site-setting-switch span{font-size:13px;font-weight:700;color:#526158}
.site-config-meta{display:grid;grid-template-columns:120px 1fr 1fr;gap:12px;padding:15px 20px;background:#f7faf8;border-bottom:1px solid #e7eee9}
.site-config-meta label,.site-setting-fields label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#526158}
.site-config-meta input,.site-config-meta select,.site-setting-fields input,.site-setting-fields select,.site-setting-fields textarea{width:100%;min-height:42px;border:1px solid #d8e0da;background:#fff;padding:9px 11px;font:14px/1.5 var(--sans);color:var(--text)}
.site-setting-fields{padding:20px}
.site-setting-fields textarea{resize:vertical}
.site-stat-row,.site-link-row{display:grid;grid-template-columns:1.5fr .7fr .7fr;gap:10px;padding:12px;background:#f8faf9;border:1px solid #e5ebe7}
.site-stat-row+.site-stat-row,.site-link-row+.site-link-row{margin-top:9px}
.site-link-list>b,.site-realtime-preview>b{display:block;margin-bottom:10px;font:700 14px var(--serif);color:var(--primary-dark)}
.site-realtime-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:15px;background:#f0f7f3;border:1px solid #d7e7dd}
.site-realtime-preview[hidden],.site-fixed-stats[hidden]{display:none}
.site-realtime-preview>b{grid-column:1/-1}
.site-realtime-preview span{padding:12px;background:#fff;border:1px solid #dfe9e3;text-align:center}
.site-realtime-preview strong,.site-realtime-preview small{display:block}
.site-realtime-preview strong{font:700 24px var(--serif);color:var(--primary-dark)}
.site-realtime-preview small{margin-top:5px;color:#69766e}
.site-config-card>footer{display:flex;align-items:center;gap:12px;padding:15px 20px!important;background:#fafcfb!important;border-top:1px solid #e7eee9;color:inherit!important}
.site-config-card>footer button{min-width:120px;min-height:42px;border-radius:4px;font-size:14px!important;cursor:pointer}
.site-config-card>footer span{font-size:13px;color:#327153}
.project-cover-field img{display:block;width:min(420px,100%);aspect-ratio:16/9;object-fit:cover;margin-top:10px;border:1px solid #dde5df;background:#f4f7f5}
.project-admin-cover{display:block;width:180px;max-width:100%;aspect-ratio:16/9;object-fit:cover;margin:12px 0;border:1px solid #e2e8e4}
img[data-content-cover]{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center;background:none}
img[data-content-cover][hidden]{display:none}
.detail-content-cover{margin-bottom:26px}
.numbers>.stats-state,.numbers>noscript{grid-column:1/-1;text-align:center;color:var(--muted)}
[data-miniapp-code][hidden]{display:none!important}
[data-miniapp-code] img{display:block;width:144px;height:144px;object-fit:contain;background:white;padding:8px;box-sizing:border-box}
.detail-actions [data-miniapp-code]{flex-shrink:0;text-align:center}
.listing-art[style*="background-image"]{background-position:center;background-size:cover}
.listing-art[style*="background-image"]:before{background:linear-gradient(180deg,transparent 55%,#24352d55)}

@media(max-width:700px){
  .site-config-card>header{display:block;padding:15px}
  .site-setting-switch{margin-top:12px}
  .site-config-meta{grid-template-columns:1fr;padding:13px 15px}
  .site-setting-fields{padding:15px}
  .site-stat-row,.site-link-row{grid-template-columns:1fr}
  .site-realtime-preview{grid-template-columns:1fr 1fr}
  .site-config-card>footer{align-items:stretch;flex-direction:column;padding:13px 15px!important}
  .site-config-card>footer button{width:100%}
}
/* 后台统一只读列表与详情抽屉 */
body.admin-detail-open{overflow:hidden}
.admin-detail-drawer[hidden]{display:none}
.admin-detail-drawer{position:fixed;inset:0;z-index:1200;display:grid;grid-template-columns:minmax(0,1fr) min(760px,92vw)}
.admin-detail-scrim{grid-column:1/-1;grid-row:1;background:rgba(16,38,30,.46);border:0;border-radius:0}
.admin-detail-drawer>aside{grid-column:2;grid-row:1;position:relative;background:#f8f6f1;height:100vh;overflow:auto;box-shadow:-18px 0 48px rgba(16,38,30,.2)}
.admin-detail-drawer>aside>header{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 28px;background:rgba(255,255,255,.96);border-bottom:1px solid #ddd7cd;backdrop-filter:blur(12px)}
.admin-detail-drawer>aside>header span{display:block;color:#867d70;font-size:13px;margin-bottom:3px}
.admin-detail-drawer>aside>header h2{margin:0;color:#173f32;font-size:23px}
.admin-detail-body{padding:28px}
.admin-detail-body>article,.admin-detail-body>.site-config-card,.admin-detail-body>.admin-editor-form{display:block!important;margin:0;background:#fff;border:1px solid #ddd7cd;border-radius:16px;padding:22px;box-shadow:none}
.admin-detail-body .admin-editor-form,.admin-detail-body .site-config-card form{margin:0}
.readonly-list-actions{display:flex;justify-content:flex-end;margin-top:14px;padding-top:14px;border-top:1px solid #ebe6de}
.readonly-list-actions button{min-width:108px}
.admin-table-record-detail{background:#fff;border:1px solid #ddd7cd;border-radius:16px;padding:22px}
.admin-table-record-detail dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0}
.admin-table-record-detail dl>div{padding:14px;border-bottom:1px solid #eee9e2}
.admin-table-record-detail dt{color:#877f73;font-size:13px;margin-bottom:6px}
.admin-table-record-detail dd{margin:0;color:#243d34;line-height:1.6;overflow-wrap:anywhere}
.admin-table-detail-actions{display:flex;flex-wrap:wrap;gap:10px}
.admin-table-detail-actions[hidden]{display:none!important}
.list-create-entry{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;margin-bottom:18px;background:#f3f8f5;border:1px solid #d9e7df;border-radius:12px}
.list-create-entry b,.list-create-entry span{display:block}
.list-create-entry span{margin-top:3px;color:#6d796f;font-size:14px}
[data-project-list-workspace][hidden],[data-content-list-workspace][hidden],[data-volunteer-list-workspace][hidden]{display:none!important}

@media(max-width:760px){
  .admin-detail-drawer{grid-template-columns:1fr}
  .admin-detail-drawer>aside{grid-column:1;width:100%;height:100dvh}
  .admin-detail-drawer>aside>header{padding:16px 18px}
  .admin-detail-drawer>aside>header h2{font-size:19px}
  .admin-detail-body{padding:16px}
  .admin-table-record-detail dl{grid-template-columns:1fr}
  .list-create-entry{align-items:flex-start;flex-direction:column}
}

/* 2026-08 后台统一工作区：列表保持扫读，详情与编辑使用独立的宽屏工作面。 */
.admin-main{--admin-surface:#fff;--admin-soft:#f4f8f5;--admin-line:#dbe5de;--admin-ink:#233a30;--admin-muted:#64756b}
.admin-main .table-panel,.admin-main .admin-module-panel,.admin-main .operations-panel,.admin-main .admin-grid>section{border-color:var(--admin-line)}
.admin-main .panel-title{padding-bottom:12px;border-bottom:1px solid #e8eee9}
.admin-main .panel-title h2,.workspace-intro h3{color:var(--admin-ink)}
.content-table-wrap{overflow:auto;border:1px solid var(--admin-line);border-radius:12px;background:var(--admin-surface)}
.content-admin-table{width:100%;min-width:880px;border-collapse:collapse;table-layout:fixed}
.content-admin-table th,.content-admin-table td{padding:14px 12px;border-bottom:1px solid #e8eee9;vertical-align:top;text-align:left}
.content-admin-table th{background:#f7faf8;color:#586a5f;font-size:12px;white-space:nowrap}
.content-admin-table .content-title-col{width:32%}.content-admin-table .content-display-col{width:20%}.content-admin-table .content-action-col{width:132px}
.content-title-cell b,.content-title-cell small,.content-admin-table td>small{display:block}.content-title-cell b{font-size:14px;line-height:1.65;overflow-wrap:anywhere}.content-title-cell small,.content-admin-table td>small{margin-top:5px;color:var(--admin-muted);font-size:12px;line-height:1.55}
.content-display-cell{white-space:nowrap}.content-display-cell span{display:inline-flex;padding:4px 7px;margin:0 4px 4px 0;background:#f2f7f3;border-radius:4px;color:#52675a;font-size:12px}
.content-table-actions{min-width:116px;white-space:nowrap}.content-table-actions button{margin:0 0 6px 0;width:100%}
.admin-detail-drawer{grid-template-columns:minmax(0,1fr) min(980px,94vw)}
.admin-detail-drawer>aside{background:#f4f7f5}.admin-detail-drawer>aside>header{padding:20px 30px;background:#fff}.admin-detail-body{padding:28px clamp(18px,3vw,42px) 42px}
.admin-detail-body>.admin-editor-form,.admin-detail-body>.site-config-card,.admin-detail-body>article{border-radius:12px;border-color:var(--admin-line);box-shadow:0 12px 30px rgba(26,62,43,.06)}
.admin-detail-body .form-actions{display:flex;align-items:center;gap:10px;padding-top:18px;margin-top:20px;border-top:1px solid #e7eee9}.admin-detail-body .form-actions .admin-primary{min-width:130px}
.site-config-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.site-config-card{border:1px solid var(--admin-line);border-radius:12px;overflow:hidden;background:#fff}.site-config-card>header{padding:18px 20px;background:#f7faf8;border-bottom:1px solid #e6eee8}.site-config-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px 20px;background:#fff}.site-setting-fields{border-top:1px solid #edf1ee;background:#fcfdfc}.site-config-card>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;background:#f7faf8;border-top:1px solid #e6eee8}
.project-admin-list,.activity-admin-list{display:grid;gap:12px}.project-admin-list>article,.activity-admin-list>article{border:1px solid var(--admin-line);border-radius:12px;background:#fff;box-shadow:none}.project-admin-list>article>header,.activity-admin-list>article>header{padding-bottom:12px;border-bottom:1px solid #edf1ee}.project-admin-list>article>footer,.activity-admin-list>article>footer{padding-top:14px;border-top:1px solid #edf1ee}
.activity-detail-sections{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.activity-detail-sections>section{border-radius:12px;border-color:var(--admin-line);padding:20px}.activity-detail-sections>section:nth-child(3),.activity-detail-sections>section:nth-child(4){grid-column:span 1}.activity-detail-actions{position:sticky;bottom:0;z-index:4;background:#fff;margin:20px -20px -20px!important;padding:14px 20px!important;border-top:1px solid var(--admin-line)!important;box-shadow:0 -10px 26px rgba(34,60,47,.08)}
.activity-detail-actions button{border-radius:7px!important;min-height:44px!important}.activity-detail-actions .danger{margin-left:auto}
.workspace-intro,.growth-workspace .workspace-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;background:var(--admin-soft);border:1px solid var(--admin-line);border-radius:12px;margin-bottom:16px}.workspace-intro h3{font-size:18px;margin:0 0 6px}.workspace-intro p{margin:0;color:var(--admin-muted);font-size:13px;line-height:1.7}
.growth-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.growth-summary article{padding:16px 18px;border:1px solid var(--admin-line);border-radius:10px;background:#fff}.growth-summary span,.growth-summary small{display:block;color:var(--admin-muted);font-size:12px}.growth-summary b{display:block;color:var(--primary-dark);font:700 26px/1.2 var(--serif);margin:8px 0}.growth-filter label{display:flex;align-items:center;gap:7px;color:var(--admin-muted);font-size:13px}.growth-filter label input{width:100px}
.growth-list{display:grid;gap:12px}.growth-card{padding:18px;border:1px solid var(--admin-line);border-radius:12px;background:#fff}.growth-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.growth-card>header b,.growth-card>header small{display:block}.growth-card>header small{margin-top:5px;color:var(--admin-muted);font-size:12px}.growth-card>header button{border:1px solid var(--primary);background:#fff;color:var(--primary);padding:9px 12px;border-radius:6px;white-space:nowrap}.growth-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0}.growth-metrics span{padding:11px 12px;background:#f6f9f7;border-radius:7px;color:var(--admin-muted);font-size:12px}.growth-metrics b{display:block;color:var(--admin-ink);font:700 19px/1.2 var(--serif);margin-bottom:4px}.growth-ledger{margin-top:18px;padding-top:16px;border-top:1px solid #e5ece7}.growth-ledger h4{margin:0 0 10px;color:var(--admin-ink);font-size:15px}.growth-ledger-table{overflow:auto}.growth-ledger table{width:100%;min-width:640px;border-collapse:collapse}.growth-ledger th,.growth-ledger td{padding:11px 10px;text-align:left;border-bottom:1px solid #edf1ee;font-size:13px}.growth-ledger th{color:var(--admin-muted);font-weight:600}.growth-ledger td b,.growth-ledger td small{display:block}.growth-ledger td small{color:var(--admin-muted);font-size:12px;margin-top:3px}.growth-ledger td strong{color:var(--primary-dark)}.growth-rules{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:16px;padding:14px 16px;border:1px solid var(--admin-line);border-radius:10px;background:#f7faf8}.growth-rules h3{font-size:14px;margin:0 6px 0 0;color:var(--admin-ink)}.growth-rules span{padding:6px 8px;background:#fff;border:1px solid #e0e9e2;border-radius:5px;font-size:12px;color:var(--admin-muted)}
@media(max-width:900px){.site-config-list{grid-template-columns:1fr}.site-config-meta{grid-template-columns:1fr 1fr}.activity-detail-sections{grid-template-columns:1fr}.activity-detail-sections>section:nth-child(n){grid-column:auto}.growth-summary,.growth-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.content-admin-table{min-width:780px}.content-admin-table .content-title-col{width:280px}.admin-detail-drawer{grid-template-columns:1fr}.admin-detail-body{padding:16px}.activity-detail-actions{margin:18px -14px -14px!important;padding:12px 14px!important}}
@media(max-width:560px){.site-config-meta{grid-template-columns:1fr}.workspace-intro,.growth-workspace .workspace-intro{display:block}.workspace-intro .tag{display:inline-flex;margin-top:12px}.growth-summary,.growth-metrics{grid-template-columns:1fr 1fr}.growth-card{padding:14px}.growth-card>header{display:block}.growth-card>header button{width:100%;margin-top:12px}.growth-filter label{width:100%;justify-content:space-between}.growth-filter label input{width:65%}.content-table-wrap{margin:0 -2px}.admin-detail-body .form-actions{position:sticky;bottom:0;background:#fff;padding:12px;margin:16px -4px -4px;box-shadow:0 -8px 22px rgba(34,60,47,.1)}.admin-detail-body .form-actions button{flex:1}.activity-detail-actions>div{grid-template-columns:1fr!important}.activity-detail-actions .danger{margin-left:0}}

/* ICP 备案号链接（2026-09-01，京ICP备2026055698号 → beian.miit.gov.cn）*/
.mini-demo{flex-wrap:wrap}
.mini-copyright{flex-basis:100%;padding:14px 0;text-align:center;font-size:11px;line-height:1.8}
.copyright a:hover,.mini-copyright a:hover{text-decoration:underline}

/* 活动门票核销、报告选择与人员能力 */
.activity-report-chooser,.ticket-checkin-panel,.ticket-list-panel{padding:22px;border:1px solid var(--admin-line,#dbe5de);border-radius:12px;background:#fff}
.activity-report-chooser>div>span,.ticket-checkin-panel header span{color:#6b7c72;font-size:12px;letter-spacing:.08em}
.activity-report-chooser h2,.ticket-checkin-panel h2{margin:6px 0;color:#233a30;font-size:22px}
.activity-report-chooser p,.ticket-checkin-panel p{margin:0;color:#64756b;line-height:1.7}
.activity-report-chooser form{display:flex;align-items:end;gap:12px;margin-top:20px;max-width:720px}.activity-report-chooser label{display:grid;gap:7px;flex:1;color:#52675a;font-size:13px}
.ticket-checkin-panel{margin-bottom:16px}.ticket-scan-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-top:20px}.ticket-scan-form>label{display:grid;gap:7px;color:#52675a;font-size:13px}.ticket-scan-form>div{display:flex;align-items:end;gap:8px}.ticket-scan-form>[data-ticket-result],.ticket-scan-form video{grid-column:1/-1}.ticket-scan-form video{width:min(520px,100%);aspect-ratio:4/3;border-radius:10px;background:#101712;object-fit:cover}
.ticket-admin-list{display:grid;gap:12px}.ticket-admin-list>article{padding:16px 18px;border:1px solid #e1e9e3;border-radius:10px;background:#fff}.ticket-admin-list article>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ticket-admin-list header b,.ticket-admin-list header small{display:block}.ticket-admin-list header small{margin-top:4px;color:#64756b}.ticket-admin-list code{overflow-wrap:anywhere}.ticket-admin-list [data-ticket-revoke]{display:flex;align-items:end;gap:8px;padding-top:12px;border-top:1px solid #edf1ee}.ticket-admin-list [data-ticket-revoke] label{display:grid;gap:5px;flex:1;color:#64756b;font-size:12px}
.user-capability-form{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(220px,.7fr);gap:12px}.user-capability-form fieldset{display:flex;align-items:center;gap:16px;border:1px solid #dbe5de;border-radius:8px;padding:10px 12px}.user-capability-form legend{padding:0 5px;color:#64756b;font-size:12px}.user-capability-form fieldset label{display:flex;align-items:center;gap:6px}.user-capability-form fieldset input{width:auto}.user-capability-form .form-actions{grid-column:1/-1}
@media(max-width:760px){.ticket-scan-form{grid-template-columns:1fr}.ticket-scan-form>div{align-items:stretch;flex-direction:column}.ticket-admin-list [data-ticket-revoke],.activity-report-chooser form{align-items:stretch;flex-direction:column}.user-capability-form{grid-template-columns:1fr}}
