:root{--color-bg: #ffffff;--color-bg-secondary: #f5f5f5;--color-text: #1a1a1a;--color-text-secondary: #666666;--color-primary: #0070f3;--color-primary-hover: #0060df;--color-border: #e5e5e5;--color-error: #e00;--radius: 8px;--max-width: 800px}*{box-sizing:border-box;margin:0;padding:0}html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-size:16px;line-height:1.6;color:var(--color-text);background:var(--color-bg)}body{min-height:100vh}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit;font-size:1rem}input,textarea{font-family:inherit;font-size:1rem}.container{max-width:var(--max-width);margin:0 auto;padding:0 1rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border:none;border-radius:var(--radius);font-weight:500;transition:all .15s ease}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover)}.btn-secondary{background:transparent;border:1px solid var(--color-border);color:var(--color-text)}.btn-secondary:hover{border-color:var(--color-text-secondary)}.input{width:100%;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius);transition:border-color .15s ease}.input:focus{outline:none;border-color:var(--color-primary)}.card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.5rem}.error{color:var(--color-error);font-size:.875rem}.header{border-bottom:1px solid var(--color-border);padding:1rem 0}.header-content{display:flex;justify-content:space-between;align-items:center}.header-logo{font-size:1.25rem;font-weight:600;color:var(--color-text)}.header-nav{display:flex;gap:1.5rem}.header-nav a{color:var(--color-text-secondary)}.header-nav a:hover,.header-nav a.active{color:var(--color-text)}.main{padding:2rem 0}.post-list{display:flex;flex-direction:column;gap:1.5rem}.post-card{cursor:pointer}.post-card:hover{border-color:var(--color-text-secondary)}.post-card h2{font-size:1.25rem;margin-bottom:.5rem}.post-card time{color:var(--color-text-secondary);font-size:.875rem}.post-content{margin-top:2rem}.post-content h1{font-size:2rem;margin-bottom:.5rem}.post-content .meta{color:var(--color-text-secondary);margin-bottom:2rem}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.gallery-item{aspect-ratio:1;overflow:hidden;border-radius:var(--radius)}.gallery-item img{width:100%;height:100%;object-fit:cover}.login-page{display:flex;justify-content:center;align-items:center;min-height:60vh}.login-form{width:100%;max-width:400px}.login-form h1{margin-bottom:1.5rem;text-align:center}.login-form .form-group{margin-bottom:1rem}.login-form label{display:block;margin-bottom:.5rem;font-weight:500}.login-form button{width:100%;margin-top:.5rem}.admin-layout{display:flex;min-height:calc(100vh - 60px)}.admin-sidebar{width:200px;border-right:1px solid var(--color-border);padding:1rem}.admin-sidebar nav{display:flex;flex-direction:column;gap:.5rem}.admin-sidebar a{padding:.5rem;border-radius:var(--radius);color:var(--color-text-secondary)}.admin-sidebar a:hover,.admin-sidebar a.active{background:var(--color-bg-secondary);color:var(--color-text);text-decoration:none}.admin-content{flex:1;padding:1.5rem}.flex{display:flex}.flex-col{flex-direction:column}.gap-1{gap:.5rem}.gap-2{gap:1rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.text-center{text-align:center}.text-secondary{color:var(--color-text-secondary)}
