*{box-sizing:border-box}body{margin:0;font-family:var(--font-family,system-ui,-apple-system,Segoe UI,Roboto,sans-serif);background:var(--background-color,#f6f6f6);color:var(--text-color,#222)}.top{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 2rem;background:var(--primary-color,#111);color:#fff}.top h1{margin:.25rem 0}.top a{color:#fff;text-decoration:none;margin-left:1rem}.filters{display:flex;gap:.5rem;flex-wrap:wrap;padding:1rem 2rem;background:var(--card-color,#fff);border-bottom:1px solid #eee}.filters a{border:1px solid #ddd;border-radius:999px;color:var(--text-color,#222);text-decoration:none;padding:.55rem .85rem}.filters a.active,.filters a:hover{background:var(--accent-color,#111);color:#fff;border-color:var(--accent-color,#111)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.25rem;padding:2rem}.card,.download,.panel,.admin{background:var(--card-color,#fff);border-radius:18px;box-shadow:0 8px 30px rgba(0,0,0,.08)}.card{overflow:hidden}.image-protect-wrap{position:relative;display:block;background:#000}.card img,.protected-image{width:100%;height:260px;object-fit:cover;display:block;user-select:none;-webkit-user-select:none;-webkit-user-drag:none}.watermark-notice{position:absolute;right:.65rem;bottom:.65rem;background:rgba(0,0,0,.58);color:#fff;padding:.25rem .55rem;border-radius:999px;font-size:.82rem;line-height:1;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.4)}.card-body{padding:1rem}.card h2,.download h2{margin:.25rem 0 1rem}.meta,small,.hint{color:var(--muted-text-color,#666);font-size:.9rem}.like,.btn{border:0;border-radius:999px;background:var(--accent-color,#111);color:#fff;padding:.75rem 1rem;cursor:pointer;text-decoration:none;display:inline-block}.like:hover,.btn:hover{opacity:.85}.list{max-width:900px;margin:2rem auto;padding:0 1rem}.download{padding:1.25rem;margin-bottom:1rem}.admin{max-width:520px;margin:3rem auto;padding:2rem}.admin.wide{max-width:1100px}.admin form{display:grid;gap:1rem}.inline-form{grid-template-columns:1fr 220px auto;align-items:end}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.color-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.checks{display:grid;gap:.6rem}.checks label{display:flex;align-items:center;gap:.55rem;font-weight:500}.checks input{width:auto}label{display:grid;gap:.35rem;font-weight:600}input,textarea,select{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:12px;font:inherit;background:#fff;color:#222}input[type=color]{height:46px;padding:.25rem}textarea{min-height:120px}.panel{padding:1.25rem;margin-bottom:1.25rem}.row{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-top:1px solid #eee;padding:.75rem 0}.row form{display:block}.danger{border:0;border-radius:12px;background:#b00020;color:#fff;padding:.5rem .75rem;cursor:pointer}.success{background:#e7f8ed;color:#086b2f;padding:1rem;border-radius:12px}.error{background:#fdecec;color:#8a1111;padding:1rem;border-radius:12px}.empty{padding:2rem;text-align:center;color:var(--muted-text-color,#666)}.empty.small{text-align:left;padding:.5rem 0}@media(max-width:650px){.top{display:block}.top nav{margin-top:1rem}.top a{display:inline-block;margin:.25rem 1rem .25rem 0}.grid{padding:1rem}.row{align-items:flex-start;flex-direction:column}.inline-form,.form-grid,.color-grid{grid-template-columns:1fr}.filters{padding:1rem}}
.layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:1.5rem;padding:1.5rem 2rem}.sidebar{background:var(--card-color,#fff);border-radius:18px;box-shadow:0 8px 30px rgba(0,0,0,.08);padding:1.25rem;height:max-content;position:sticky;top:1rem}.sidebar h2{font-size:1.1rem;margin:.25rem 0 1rem}.side-filters{display:grid;gap:.5rem}.side-filters a{border:1px solid #ddd;border-radius:12px;color:var(--text-color,#222);text-decoration:none;padding:.65rem .8rem}.side-filters a.active,.side-filters a:hover{background:var(--accent-color,#111);color:#fff;border-color:var(--accent-color,#111)}.content-area{min-width:0}.grid.fixed-grid{grid-template-columns:repeat(4,minmax(0,1fr));padding:0}.pagination{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap;padding:1.5rem 0 2rem}.pagination a{background:var(--card-color,#fff);border:1px solid #ddd;border-radius:999px;color:var(--text-color,#222);padding:.6rem .9rem;text-decoration:none}.pagination a.active,.pagination a:hover{background:var(--accent-color,#111);border-color:var(--accent-color,#111);color:#fff}.page-content{max-width:950px;margin:2rem auto}.html-content{line-height:1.65}.edit-card{border-top:1px solid #eee;padding:1rem 0}.edit-card summary{cursor:pointer}.edit-form{display:grid;gap:1rem;margin-top:1rem}.edit-preview img{max-width:220px;max-height:150px;object-fit:cover;border-radius:12px;display:block}.delete-form{margin-top:.75rem}.delete-form button{width:auto}.card-body p:not(.meta){line-height:1.45}@media(max-width:1100px){.grid.fixed-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:850px){.layout{grid-template-columns:1fr;padding:1rem}.sidebar{position:static}.grid.fixed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.grid.fixed-grid{grid-template-columns:1fr}.card img,.protected-image{height:230px}}
.download-grid .empty{grid-column:1/-1}.download-card{overflow:hidden;display:flex;flex-direction:column;min-height:100%}.download-file-wrap{height:260px;background:linear-gradient(135deg,var(--primary-color,#111),var(--accent-color,#111));display:flex;align-items:center;justify-content:center;color:#fff;user-select:none}.download-file-icon{width:118px;min-height:142px;border:3px solid rgba(255,255,255,.82);border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;background:rgba(255,255,255,.08);box-shadow:0 10px 28px rgba(0,0,0,.18)}.download-arrow{font-size:3.2rem;line-height:1}.download-ext{font-weight:800;letter-spacing:.08em;font-size:.95rem;border-top:1px solid rgba(255,255,255,.45);padding-top:.55rem;max-width:92px;overflow:hidden;text-overflow:ellipsis}.download-card .card-body{display:flex;flex-direction:column;gap:.35rem;flex:1}.download-card .btn{margin-top:auto;width:max-content}
@media(max-width:520px){.download-file-wrap{height:230px}}
