:root{--bg: #14141a;--bg-elev: #1c1c24;--bg-elev-2: #232330;--panel: #1a1a22;--border: #2c2c38;--border-soft: #232330;--text: #d8d4cc;--text-dim: #8a8478;--text-faint: #5e5a52;--accent: #c9b88a;--accent-dim: #8a7d5a;--danger: #b56565;--ok: #7a9a7a;--radius: 4px;--radius-lg: 8px;--shadow: 0 8px 30px rgba(0, 0, 0, .5);--font-serif: "Cormorant Garamond", "EB Garamond", Georgia, "Times New Roman", serif;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--maxw: 1200px}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--accent);text-decoration:none;transition:color .2s}a:hover{color:#e6d6a8}img{max-width:100%;display:block}button,input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}.loading{display:flex;align-items:center;justify-content:center;min-height:60vh;color:var(--text-dim);font-style:italic}.site-header{border-bottom:1px solid var(--border-soft);padding:28px 0}.site-header .container{display:flex;align-items:baseline;justify-content:space-between;gap:24px;flex-wrap:wrap}.site-title{font-family:var(--font-serif);font-size:1.8rem;font-weight:500;letter-spacing:.04em;color:var(--text)}.site-title a{color:inherit}.site-title a:hover{color:var(--accent)}.site-nav{display:flex;gap:28px;font-size:.85rem;letter-spacing:.12em;text-transform:uppercase}.site-nav a{color:var(--text-dim)}.site-nav a:hover,.site-nav a.active{color:var(--accent)}.site-footer{border-top:1px solid var(--border-soft);padding:40px 0 60px;margin-top:80px;color:var(--text-faint);font-size:.85rem;text-align:center}.gallery-hero{padding:60px 0 40px;text-align:center}.gallery-hero h1{font-family:var(--font-serif);font-size:2.6rem;font-weight:400;letter-spacing:.02em;color:var(--text)}.gallery-hero p{color:var(--text-dim);margin-top:12px;font-style:italic}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px;padding:20px 0 60px}.gallery-card{background:var(--panel);border:1px solid var(--border-soft);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;display:flex;flex-direction:column}.gallery-card:hover{transform:translateY(-4px);border-color:var(--accent-dim);box-shadow:var(--shadow)}.gallery-card .thumb-wrap{background:#0e0e12;overflow:hidden;display:flex;align-items:center;justify-content:center}.gallery-card .thumb-wrap img{width:100%;height:100%;object-fit:contain;transition:transform .4s ease,filter .4s ease;filter:grayscale(.15) brightness(.92)}.gallery-card:hover .thumb-wrap img{transform:scale(1.04);filter:grayscale(0) brightness(1)}.gallery-card .card-body{padding:16px 18px 20px}.gallery-card .card-title{font-family:var(--font-serif);font-size:1.25rem;font-weight:500;color:var(--text);line-height:1.3}.gallery-card .card-meta{color:var(--text-faint);font-size:.8rem;margin-top:6px;letter-spacing:.05em}.gallery-card .card-price{margin-top:10px;color:var(--accent);font-size:.9rem}.gallery-card .card-price.sold{color:var(--text-faint);font-style:italic}.gallery-card.blog-card .card-body{padding:28px 24px}.gallery-card .card-type-tag{display:inline-block;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent-dim);border:1px solid var(--accent-dim);padding:2px 10px;border-radius:20px;margin-bottom:12px}.gallery-card .card-excerpt{margin-top:10px;color:var(--text-dim);font-size:.88rem;line-height:1.6}.empty-state{text-align:center;padding:80px 20px;color:var(--text-dim);font-style:italic}.artwork-detail{padding:40px 0 60px}.artwork-detail .back-link{color:var(--text-dim);font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:32px;display:inline-block}.artwork-detail .detail-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:start}.artwork-detail .detail-image{background:#0e0e12;border:1px solid var(--border-soft);border-radius:var(--radius-lg);overflow:hidden}.artwork-detail .detail-image img{width:100%;height:auto}.artwork-detail .detail-info h1{font-family:var(--font-serif);font-size:2.2rem;font-weight:500;line-height:1.2}.artwork-detail .detail-year{color:var(--text-faint);letter-spacing:.1em;margin-top:6px;font-size:.9rem}.artwork-detail .detail-description{margin-top:24px;color:var(--text);line-height:1.8;white-space:pre-wrap}.artwork-detail .detail-specs{margin-top:32px;border-top:1px solid var(--border-soft);padding-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}.artwork-detail .spec{font-size:.9rem}.artwork-detail .spec-label{color:var(--text-faint);text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;margin-bottom:4px}.artwork-detail .spec-value{color:var(--text)}.artwork-detail .price-block{margin-top:32px;padding:24px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius)}.artwork-detail .price-label{color:var(--text-faint);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.artwork-detail .price-value{font-family:var(--font-serif);font-size:1.6rem;color:var(--accent);margin:4px 0 12px}.artwork-detail .price-value.sold{color:var(--text-faint);font-style:italic}.artwork-detail .price-link{display:inline-block;padding:10px 22px;border:1px solid var(--accent-dim);border-radius:var(--radius);color:var(--accent);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;transition:background .2s,color .2s}.artwork-detail .price-link:hover{background:var(--accent);color:var(--bg)}.blog-detail{padding:40px 0 60px;max-width:720px}.blog-detail .back-link{color:var(--text-dim);font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:32px;display:inline-block}.blog-article h1{font-family:var(--font-serif);font-size:2.4rem;font-weight:500;line-height:1.2;margin-bottom:8px}.blog-article .blog-date{color:var(--text-faint);font-size:.85rem;letter-spacing:.08em;margin-bottom:32px}.blog-article .blog-content{color:var(--text);font-size:1.05rem;line-height:1.9;white-space:pre-wrap}.contact-page{padding:60px 0;max-width:640px;margin:0 auto}.contact-page h1{font-family:var(--font-serif);font-size:2.4rem;font-weight:500;text-align:center}.contact-page .contact-intro{text-align:center;color:var(--text-dim);font-style:italic;margin:16px 0 40px;line-height:1.7}.contact-links{display:flex;flex-direction:column;gap:16px}.contact-link{display:flex;align-items:center;gap:16px;padding:20px 24px;background:var(--bg-elev);border:1px solid var(--border-soft);border-radius:var(--radius);transition:border-color .2s,transform .2s}.contact-link:hover{border-color:var(--accent-dim);transform:translate(4px)}.contact-link .icon{width:40px;height:40px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg-elev-2);color:var(--accent)}.contact-link .label{color:var(--text-faint);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.contact-link .value{color:var(--text);font-size:1rem;margin-top:2px;word-break:break-all}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(ellipse at top,#1a1a24,#0e0e12 70%)}.auth-card{width:100%;max-width:380px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);padding:40px 36px;box-shadow:var(--shadow)}.auth-card h1{font-family:var(--font-serif);font-size:1.8rem;font-weight:500;text-align:center;margin-bottom:8px}.auth-card .auth-sub{text-align:center;color:var(--text-dim);font-size:.85rem;margin-bottom:28px}.form-group{margin-bottom:20px}.form-group label{display:block;color:var(--text-dim);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.form-group input,.form-group textarea,.form-group select{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px;color:var(--text);transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--accent-dim)}.form-group textarea{min-height:100px;resize:vertical;line-height:1.6}.form-group .hint{color:var(--text-faint);font-size:.78rem;margin-top:6px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.checkbox-group{display:flex;align-items:center;gap:10px}.checkbox-group input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.checkbox-group label{margin:0;text-transform:none;letter-spacing:0;font-size:.95rem;color:var(--text)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 22px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elev);color:var(--text);cursor:pointer;font-size:.9rem;letter-spacing:.04em;transition:background .2s,border-color .2s,color .2s,opacity .2s}.btn:hover{border-color:var(--accent-dim);color:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--bg)}.btn-primary:hover{background:#e6d6a8;border-color:#e6d6a8;color:var(--bg)}.btn-danger{border-color:var(--danger);color:var(--danger)}.btn-danger:hover{background:var(--danger);color:var(--bg)}.btn-sm{padding:6px 14px;font-size:.82rem}.btn-block{width:100%}.btn-row{display:flex;gap:12px;flex-wrap:wrap}.admin-layout{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.admin-sidebar{background:var(--bg-elev);border-right:1px solid var(--border);padding:24px 0;display:flex;flex-direction:column}.admin-sidebar .brand{font-family:var(--font-serif);font-size:1.3rem;padding:0 24px 24px;border-bottom:1px solid var(--border-soft);color:var(--text)}.admin-sidebar .brand small{display:block;font-family:var(--font-sans);font-size:.7rem;color:var(--text-faint);letter-spacing:.15em;text-transform:uppercase;margin-top:4px}.admin-nav{flex:1;padding:20px 0;display:flex;flex-direction:column;gap:2px}.admin-nav a{display:flex;align-items:center;gap:12px;padding:12px 24px;color:var(--text-dim);font-size:.9rem;transition:background .2s,color .2s}.admin-nav a:hover{background:var(--bg-elev-2);color:var(--text)}.admin-nav a.active{color:var(--accent);background:var(--bg-elev-2);border-left:3px solid var(--accent);padding-left:21px}.admin-sidebar .sidebar-footer{padding:16px 24px;border-top:1px solid var(--border-soft)}.admin-content{padding:40px;overflow-y:auto}.admin-content h1{font-family:var(--font-serif);font-size:1.8rem;font-weight:500;margin-bottom:28px}.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:40px}.dash-card{background:var(--bg-elev);border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:24px}.dash-card .num{font-family:var(--font-serif);font-size:2.4rem;color:var(--accent)}.dash-card .lbl{color:var(--text-faint);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;margin-top:4px}.admin-artworks-list{display:flex;flex-direction:column;gap:12px}.admin-artwork-row{display:grid;grid-template-columns:80px 1fr auto auto;gap:20px;align-items:center;padding:14px 18px;background:var(--bg-elev);border:1px solid var(--border-soft);border-radius:var(--radius);transition:border-color .2s}.admin-artwork-row:hover{border-color:var(--border)}.admin-artwork-row .row-thumb{width:80px;height:80px;object-fit:cover;border-radius:var(--radius);background:#0e0e12}.admin-artwork-row .row-title{font-family:var(--font-serif);font-size:1.15rem;color:var(--text)}.admin-artwork-row .row-meta{color:var(--text-faint);font-size:.82rem;margin-top:2px}.admin-artwork-row .row-badge{font-size:.72rem;padding:3px 10px;border-radius:20px;border:1px solid var(--border);color:var(--text-dim)}.admin-artwork-row .row-badge.visible{color:var(--ok);border-color:var(--ok)}.admin-artwork-row .row-badge.hidden{color:var(--text-faint)}.artwork-edit-page{max-width:860px}.artwork-edit-page .page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;flex-wrap:wrap;gap:16px}.artwork-edit-page h1{margin:0}.section-card{background:var(--panel);border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:28px;margin-bottom:24px}.section-card h2{font-family:var(--font-serif);font-size:1.3rem;font-weight:500;margin-bottom:20px;color:var(--text)}.version-list{display:flex;flex-direction:column;gap:16px}.version-item{display:grid;grid-template-columns:120px 1fr auto;gap:20px;align-items:start;padding:16px;background:var(--bg-elev);border:1px solid var(--border-soft);border-radius:var(--radius)}.version-item .v-thumb{width:120px;height:120px;object-fit:cover;border-radius:var(--radius);background:#0e0e12}.version-item .v-fields{display:flex;flex-direction:column;gap:10px}.version-item .v-exif{font-size:.78rem;color:var(--text-faint)}.version-item .v-actions{display:flex;flex-direction:column;gap:8px}.upload-zone{border:2px dashed var(--border);border-radius:var(--radius-lg);padding:36px;text-align:center;color:var(--text-dim);cursor:pointer;transition:border-color .2s,color .2s;margin-top:16px}.upload-zone:hover,.upload-zone.dragging{border-color:var(--accent-dim);color:var(--accent)}.upload-zone input{display:none}.upload-zone .uz-icon{font-size:2rem;margin-bottom:8px}.alert{padding:12px 18px;border-radius:var(--radius);margin-bottom:20px;font-size:.9rem}.alert-error{background:#b565651f;border:1px solid var(--danger);color:#d89090}.alert-success{background:#7a9a7a1f;border:1px solid var(--ok);color:#aacbaa}.alert-info{background:#c9b88a1a;border:1px solid var(--accent-dim);color:var(--accent)}@media (max-width: 860px){.artwork-detail .detail-grid,.admin-layout{grid-template-columns:1fr}.admin-sidebar{border-right:none;border-bottom:1px solid var(--border)}.admin-nav{flex-direction:row;overflow-x:auto;padding:12px}.admin-nav a{padding:8px 14px;white-space:nowrap}.admin-content{padding:24px 20px}.version-item{grid-template-columns:1fr}.version-item .v-thumb{width:100%;height:200px}.form-row,.form-row-3{grid-template-columns:1fr}.admin-artwork-row{grid-template-columns:60px 1fr}.admin-artwork-row .row-thumb{width:60px;height:60px}.admin-artwork-row .row-badge,.admin-artwork-row .btn-sm{grid-column:2}}@media (max-width: 600px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px}.gallery-hero h1{font-size:2rem}.site-title{font-size:1.4rem}}.maintenance-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px;background:var(--bg)}.maintenance-content{max-width:480px;text-align:center}.maintenance-icon{font-size:3rem;display:block;margin-bottom:20px}.maintenance-title{font-family:var(--font-serif);font-size:2rem;color:var(--text);margin:0 0 16px;letter-spacing:.02em}.maintenance-message{color:var(--text-faint);font-size:1rem;line-height:1.6;margin:0}.maintenance-card{display:flex;align-items:center;justify-content:space-between;gap:20px}
