:root{color-scheme:light;--bg: #fffaf7;--surface: #ffffff;--text: #241b1b;--muted: #6c5b5b;--line: #eadfda;--accent: #c97f6b;--max-width: 1160px;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{width:min(var(--max-width),calc(100% - 32px));margin:0 auto}.section-title{font-size:clamp(1.5rem,2vw,2.2rem);margin:0 0 16px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px}.section-eyebrow{margin:0 0 8px;color:var(--accent);font-size:.95rem;letter-spacing:.08em}.section-copy{max-width:420px;margin:0;color:var(--muted);line-height:1.7}.hero{padding:72px 0 56px}.hero-copy{padding:40px;background:linear-gradient(180deg,#fffffff5,#fff6f1f0);border:1px solid var(--line);border-radius:28px;box-shadow:0 18px 40px #3e1c1414}.hero-kicker{margin:0;color:var(--accent);letter-spacing:.08em}.hero h1{font-size:clamp(2.8rem,6vw,4.8rem);margin:12px 0 16px}.hero-lead{margin:0;color:var(--muted);font-size:1.05rem;line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.hero-button{padding:12px 18px;border-radius:999px;border:1px solid var(--line);background:#ffffffe0}.hero-button-primary{background:var(--accent);border-color:var(--accent);color:#fff}.category-section{margin-bottom:48px}.category-grid,.featured-grid{display:grid;gap:16px}.category-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.category-card{display:grid;gap:10px;padding:24px;background:linear-gradient(180deg,#fff,#fff7f3);border:1px solid var(--line);border-radius:24px;box-shadow:0 14px 30px #3e1c140f}.category-card-label{font-size:1.2rem;font-weight:700}.category-card-hint{color:var(--muted);font-size:.95rem}.featured-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));padding-bottom:80px}.featured-grid article{background:var(--surface);border:1px solid var(--line);border-radius:20px;overflow:hidden}.featured-grid p{margin:0;padding:12px 14px 16px}.category-page{padding:24px 0 72px}.category-page-header{margin-bottom:24px}.category-nav{display:grid;gap:12px;margin:8px 0 24px}.category-nav-home,.category-nav-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:#ffffffe0;white-space:nowrap}.category-nav-list{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.category-nav-list::-webkit-scrollbar{display:none}.category-nav-link-current{background:var(--accent);border-color:var(--accent);color:#fff}.gallery-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));padding-bottom:72px}.image-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:20px;overflow:hidden}.share-btn{all:unset;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#ffffffe6;color:var(--muted);cursor:pointer;transition:all .2s;z-index:10;box-shadow:0 2px 8px #0000001a}.share-btn:hover{background:#fff;color:var(--accent);transform:scale(1.05)}.image-trigger{all:unset;display:block;cursor:pointer}.image-meta{display:grid;gap:6px;padding:12px 14px 16px}.image-title{font-weight:600}.image-tags{display:flex;flex-wrap:wrap;gap:6px}.tag{display:inline-block;padding:3px 10px;background:#c97f6b1f;color:var(--accent);border-radius:999px;font-size:.8rem;font-weight:500}.tag-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.tag-filter-link{display:inline-block;padding:6px 14px;background:var(--surface);border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.85rem;text-decoration:none;transition:all .2s}.tag-filter-link:hover{border-color:var(--accent);color:var(--accent)}.tag-filter-link-active{background:var(--accent);border-color:var(--accent);color:#fff}.toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#000c;color:#fff;padding:16px 32px;border-radius:12px;font-size:1rem;z-index:9999;opacity:0;pointer-events:none;transition:opacity .3s}.toast.show{opacity:1}.back-to-top{position:fixed;bottom:24px;right:24px;width:48px;height:48px;border-radius:50%;background:#ffffffe6;border:1px solid var(--line);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:all .3s ease;box-shadow:0 4px 12px #0000001a;z-index:100}.back-to-top.visible{opacity:1;pointer-events:auto}.back-to-top:hover{background:#fff;transform:translateY(-2px);box-shadow:0 6px 16px #00000026}.image-summary{color:var(--muted);font-size:.92rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.lightbox{border:0;padding:0;max-width:min(92vw,960px);width:100%;background:transparent}.lightbox::backdrop{background:#181212a6;backdrop-filter:blur(4px)}.lightbox-shell{position:relative;background:var(--surface);border-radius:24px;padding:24px;box-shadow:0 24px 60px #3e1c1433}.lightbox-close{all:unset;position:absolute;top:12px;right:12px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#0000000f;color:var(--text);cursor:pointer;transition:all .2s ease}.lightbox-close:hover{background:#0000001f;transform:scale(1.08)}.lightbox-close:active{transform:scale(.96)}.lightbox-title{margin:12px 0 0}.lightbox-description{margin:8px 0 0;color:var(--muted);line-height:1.7}.admin-page{padding:48px 0 72px}.admin-grid,.item-table-list{display:grid;gap:24px}.admin-card,.admin-form{display:grid;gap:16px;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:24px}.admin-form label{display:grid;gap:8px}.admin-form input,.admin-form select,.admin-form button,.admin-toolbar button,.danger-button{font:inherit;padding:12px 14px;border-radius:14px;border:1px solid var(--line)}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.form-error{margin:0;color:#b42318}.danger-button{background:#fff2f0}@media(max-width:900px){.section-heading{grid-template-columns:1fr;display:grid;align-items:start}}@media(max-width:720px){.hero-copy,.hero-panel{padding:24px}.hero-actions{flex-direction:column}.hero-button{text-align:center}.admin-toolbar{flex-direction:column;align-items:stretch}}
