@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&display=swap";:root{--bg: #f6f5f1;--panel: #fffefb;--ink: #1f2b22;--ink-soft: #4e5f54;--line: #d9dfd7;--brand: #1f8a64;--brand-soft: #e4f2eb;--danger: #9b2226;--radius: 14px}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:Manrope,Segoe UI,sans-serif;color:var(--ink);background:radial-gradient(circle at 15% 20%,#ffffff 0%,transparent 36%),radial-gradient(circle at 80% 0%,#edf5ef 0%,transparent 30%),var(--bg)}h1,h2,h3,h4,p{margin:0}button,input,select,textarea{font:inherit}.gallery-layout{display:grid;grid-template-columns:280px minmax(0,1fr) 340px;min-height:100vh;gap:16px;padding:16px}.gallery-sidebar,.gallery-main,.detail-panel,.admin-card,.admin-login-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.gallery-sidebar{padding:18px;display:flex;flex-direction:column;gap:18px}.gallery-sidebar header p,.gallery-header p,.muted{color:var(--ink-soft)}.nav-block{display:flex;flex-direction:column;gap:8px}.nav-block h2{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft)}.nav-btn{border:1px solid var(--line);background:#fff;color:var(--ink);text-align:left;border-radius:10px;padding:9px 12px;cursor:pointer}.nav-btn.is-active{border-color:var(--brand);background:var(--brand-soft)}.gallery-main{display:flex;flex-direction:column;min-width:0;overflow:hidden}.gallery-header{border-bottom:1px solid var(--line);padding:18px 20px}.feed-shell{position:relative;height:calc(100vh - 150px);overflow:auto;padding:14px}.feed-row{position:absolute;width:100%;left:0;top:0;padding:8px 0}.feed-grid{display:grid;gap:12px}.feed-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;text-align:left;background:#fff;padding:0;cursor:pointer}.feed-card.is-selected{border-color:var(--brand);box-shadow:0 0 0 3px #1f8a6429}.feed-image-wrap{aspect-ratio:4 / 5;overflow:hidden;background:linear-gradient(135deg,#f0f4ef,#dfe8e0)}.feed-image{width:100%;height:100%;object-fit:cover;display:block}.feed-caption{padding:10px 12px}.feed-caption p{font-size:.92rem}.feed-status{text-align:center;color:var(--ink-soft);padding:12px}.detail-panel{padding:14px;display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 32px);overflow:auto}.detail-header{display:flex;align-items:center;justify-content:space-between}.detail-list{display:flex;flex-direction:column;gap:10px}.detail-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.detail-card img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.detail-card h4,.detail-card p{padding:8px 10px}.primary-btn,.ghost-btn{border-radius:10px;border:1px solid transparent;padding:9px 12px;cursor:pointer}.primary-btn{background:var(--brand);color:#fff}.ghost-btn{border-color:var(--line);background:#fff}.admin-login-shell{min-height:100vh;display:grid;place-items:center;padding:16px}.admin-login-card{width:min(420px,100%);padding:24px;display:flex;flex-direction:column;gap:12px}.admin-login-card label{display:flex;flex-direction:column;gap:6px}.admin-shell{display:flex;flex-direction:column;gap:16px;padding:16px}.admin-header{display:flex;justify-content:space-between;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-card{padding:14px;display:flex;flex-direction:column;gap:10px}.stack-form{display:flex;flex-direction:column;gap:8px}.data-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.data-list.horizontal{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.data-list li{border:1px solid var(--line);border-radius:10px;padding:8px;display:flex;flex-direction:column;gap:2px}.data-list span,.data-list small,.error-text{color:var(--ink-soft)}.error-text{color:var(--danger)}input,select,textarea{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:#fff}@media(max-width:1180px){.gallery-layout{grid-template-columns:260px minmax(0,1fr)}.detail-panel{display:none}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:780px){.gallery-layout{grid-template-columns:1fr;padding:10px}.gallery-sidebar{order:2}.gallery-main{order:1}.feed-shell{height:62vh}.admin-grid{grid-template-columns:1fr}}
