:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.navbar-container{width:100%;background:#fff}.main-navbar{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 4rem;background:#fff;border-bottom:1px solid #e5e5e5}.logo-large a{font-size:2.5rem;font-weight:500;letter-spacing:.08em;text-decoration:none;color:#000;transition:color .2s ease;display:inline-block;padding:.5rem 0}.logo-large a:hover{color:#c5a028}.nav-actions{display:flex;gap:1rem;align-items:center}.nav-btn{padding:.625rem 1.5rem;text-decoration:none;font-size:.75rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;transition:all .2s ease;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-align:center;width:120px;height:40px;box-sizing:border-box;font-family:inherit;background:none;border:none;border-radius:0}.dashboard-btn{border:1px solid #c5a028;background:#c5a028;color:#000}.dashboard-btn:hover{background:#d4af37;color:#000}.login-btn{border:1px solid #c5a028;color:#c5a028;background:transparent}.login-btn:hover{background:#c5a028;color:#000}.nav-btn.logout-btn{border:1px solid #e5e5e5;color:#000!important;background:transparent}.nav-btn.logout-btn:hover{border-color:#c5a028;color:#c5a028!important;background:transparent}.category-navbar{background:#fff;padding:0;margin:0}.category-links{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0;padding:0}.category-link{display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:1.25rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:#000;transition:all .3s ease;padding:2rem 1rem;text-align:center;position:relative;overflow:hidden}.category-link:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(197,160,40,.3) 50%,transparent 100%);transition:left .5s ease;z-index:0}.category-link:hover:before{left:100%}.category-link:nth-child(1):hover,.category-link:nth-child(2):hover,.category-link:nth-child(3):hover,.category-link:nth-child(4):hover{background:#c5a028;color:#000;box-shadow:0 -4px 15px #c5a02866}.category-link span{position:relative;z-index:1}.category-link.active{background:#c5a028;color:#000}@media(max-width:768px){.main-navbar{flex-direction:column;gap:1rem;padding:1rem}.logo-large a{font-size:1.75rem}.nav-btn{width:100px;height:36px;padding:.5rem 1rem}.category-links{grid-template-columns:1fr}.category-link{padding:1.25rem;font-size:1rem}}:root{--color-black: #000000;--color-white: #ffffff;--color-cream: #faf9f8;--color-gold: #c5a028;--color-gold-light: #d4af37;--color-gray-dark: #1a1a1a;--color-gray: #555555;--color-gray-light: #888888;--color-border: #e5e5e5;--color-background: #faf9f8;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--spacing-4xl: 5rem;--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--font-size-5xl: 3rem;--font-size-6xl: 4rem;--border-radius: 0px;--border-width: 1px;--border-style: solid;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .05);--transition-fast: .2s ease;--transition-normal: .3s ease;--transition-slow: .5s ease}body{font-family:var(--font-primary);color:var(--color-gray);background-color:var(--color-background);line-height:1.5}h1,h2,h3,h4,h5,h6{font-weight:400;color:var(--color-black);letter-spacing:-.02em}h1{font-size:var(--font-size-6xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}.btn{display:inline-block;padding:var(--spacing-md) var(--spacing-xl);border:none;border-radius:var(--border-radius);font-size:var(--font-size-sm);font-weight:500;text-decoration:none;cursor:pointer;transition:all var(--transition-normal);letter-spacing:.03em;text-transform:uppercase}.btn-primary{background:var(--color-gold);color:var(--color-black)}.btn-primary:hover{background:var(--color-gold-light);transform:translateY(-2px)}.btn-secondary{background:transparent;color:var(--color-black);border:var(--border-width) solid var(--color-black)}.btn-secondary:hover{background:var(--color-black);color:var(--color-white)}.btn-outline{background:transparent;color:var(--color-gray);border:var(--border-width) solid var(--color-border)}.btn-outline:hover{border-color:var(--color-gold);color:var(--color-gold)}.card{background:var(--color-white);border:var(--border-width) solid var(--color-border);transition:all var(--transition-normal)}.card:hover{border-color:var(--color-gold);transform:translateY(-3px);box-shadow:var(--shadow-lg)}input,select,textarea{width:100%;padding:var(--spacing-md);border:var(--border-width) solid var(--color-border);border-radius:var(--border-radius);font-size:var(--font-size-sm);font-family:var(--font-primary);transition:all var(--transition-fast);background:var(--color-white);color:var(--color-black)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-gold)}input::placeholder,textarea::placeholder{color:var(--color-gray-light);opacity:1}select option{color:var(--color-black);background:var(--color-white)}label{font-size:var(--font-size-xs);font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray);margin-bottom:var(--spacing-xs);display:block}table{width:100%;border-collapse:collapse}th{text-align:left;padding:var(--spacing-md);font-size:var(--font-size-xs);font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray-light);border-bottom:var(--border-width) solid var(--color-border)}td{padding:var(--spacing-md);font-size:var(--font-size-sm);border-bottom:var(--border-width) solid var(--color-border)}tr:hover{background:var(--color-cream)}.modal-content{background:var(--color-white);max-width:600px;width:90%;max-height:90vh;overflow-y:auto;border:var(--border-width) solid var(--color-border)}.modal-header{padding:var(--spacing-xl);border-bottom:var(--border-width) solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:var(--font-size-xl)}.modal-body{padding:var(--spacing-xl)}.modal-footer{padding:var(--spacing-xl);border-top:var(--border-width) solid var(--color-border);display:flex;justify-content:flex-end;gap:var(--spacing-md)}.toast{position:fixed;bottom:var(--spacing-xl);right:var(--spacing-xl);padding:var(--spacing-md) var(--spacing-xl);background:var(--color-black);color:var(--color-white);font-size:var(--font-size-sm);z-index:1100;animation:slideIn .3s ease}.toast.success{background:var(--color-gold);color:var(--color-black)}.loading-spinner{text-align:center;padding:var(--spacing-3xl);color:var(--color-gray-light);font-size:var(--font-size-sm)}.error-message{color:#dc2626;font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}.success-message{color:var(--color-gold);font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}@media(max-width:768px){:root{--font-size-6xl: 2.5rem;--font-size-5xl: 2rem;--font-size-4xl: 2rem;--font-size-3xl: 1.5rem;--spacing-3xl: 2rem;--spacing-4xl: 3rem}}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;overflow-x:hidden}body{margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;background-color:#fff}#root{width:100%;min-height:100vh}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.fu-password-wrap{position:relative;display:flex;align-items:center;width:100%}.fu-password-wrap input{width:100%;padding-right:42px!important}.fu-eye-btn{position:absolute;right:10px;background:none;border:none;cursor:pointer;color:#9ca3af;padding:0;display:flex;align-items:center;justify-content:center;transition:color .15s;line-height:1}.fu-eye-btn:hover{color:#374151}.fu-field-wrap{display:flex;flex-direction:column;gap:4px;width:100%}.fu-field-error{font-size:11px;color:#dc2626;letter-spacing:.02em}.login-page{min-height:100vh;background:var(--color-black);display:flex;flex-direction:column}.login-hero{position:relative;background:var(--color-black);height:40vh;min-height:280px;display:flex;align-items:center;justify-content:center;text-align:center}.login-hero-overlay{position:absolute;inset:0;background:#00000080}.login-hero-content{position:relative;z-index:2;color:var(--color-white);animation:fadeInUp .8s ease}.login-hero-content h1{font-size:var(--font-size-5xl);margin-bottom:var(--spacing-md);font-weight:400;color:var(--color-white)}.login-hero-content p{font-size:var(--font-size-md);opacity:.8}.login-container{display:flex;justify-content:center;align-items:flex-start;padding:var(--spacing-xl) var(--spacing-md);margin-top:-60px;z-index:10}.login-card{background:var(--color-white);border:var(--border-width) solid var(--color-border);padding:var(--spacing-3xl);width:100%;max-width:480px;animation:slideUp .6s ease}.login-card-wide{max-width:740px}.login-header{text-align:center;margin-bottom:var(--spacing-xl)}.login-header h2{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-xs)}.login-header p{font-size:var(--font-size-sm);color:var(--color-gray-light)}.login-tabs{display:flex;border-bottom:1px solid #e5e7eb;margin-bottom:8px}.login-tab{flex:1;padding:12px;background:none;border:none;cursor:pointer;font-size:14px;color:#6b7280;font-weight:500;transition:all .2s;border-bottom:2px solid transparent;margin-bottom:-1px;font-family:inherit}.login-tab:hover{color:#111}.login-tab.active{color:#111;border-bottom-color:#c9a84c;font-weight:600}.login-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group{display:flex;flex-direction:column;gap:4px}.form-group label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray)}.form-group input,.form-group select{padding:var(--spacing-md);border:var(--border-width) solid var(--color-border);font-size:var(--font-size-sm);width:100%;font-family:inherit;outline:none;background:#fff;transition:border-color .15s}.form-group input:focus,.form-group select:focus{border-color:var(--color-gold)}.label-hint{font-size:10px;color:#9ca3af;font-weight:400;text-transform:none;letter-spacing:0}.field-error-msg{font-size:11px;color:#dc2626;margin-top:2px;display:block}.signup-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.signup-row-3{grid-template-columns:2fr 1fr 1fr}.login-btn{width:100%;padding:var(--spacing-md);background:var(--color-gold);color:var(--color-black);border:none;font-size:var(--font-size-sm);font-weight:500;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;transition:all var(--transition-normal);font-family:inherit;margin-top:4px}.login-btn:hover:not(:disabled){background:var(--color-gold-light);transform:translateY(-2px)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.login-footer{text-align:center;margin-top:var(--spacing-sm);padding-top:var(--spacing-lg);border-top:var(--border-width) solid var(--color-border)}.login-footer p{font-size:var(--font-size-xs);color:var(--color-gray-light)}.link-btn{background:none;border:none;color:#c9a84c;cursor:pointer;font-size:inherit;font-weight:600;padding:0;text-decoration:underline;font-family:inherit}.link-btn:hover{color:#a07c30}.success-message{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;border-radius:6px;padding:10px 14px;font-size:13px}.error-message{background:#fef2f2;color:#991b1b;border:1px solid #fecaca;border-radius:6px;padding:10px 14px;font-size:13px}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.login-card,.login-card-wide{padding:var(--spacing-xl);max-width:100%}.signup-row,.signup-row-3{grid-template-columns:1fr}}.home-container{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0;padding:0;color:#1a1a1a;overflow-x:hidden;background:#faf9f8}.hero-section{position:relative;min-height:70vh;background:linear-gradient(#0000004d,#0000004d),url(https://static.mfah.com/images/kinder-building-from-above.4932242836019972711.jpg?width=1680) no-repeat center center / cover;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}.hero-overlay{position:absolute;inset:0;background:#00000080;z-index:1}.hero-content{position:relative;z-index:2;max-width:800px;padding:2rem;animation:fadeInUp 1s ease;color:#fff}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.hero-title{font-size:3.5rem;font-weight:400;letter-spacing:-.02em;line-height:1.2;margin-bottom:1rem;color:#fff}.hero-description{font-size:1.125rem;opacity:.85;line-height:1.6;font-weight:300;max-width:600px;margin:0 auto;color:#fff}.events-section{padding:5rem 2rem;background:#fff}.section-header{text-align:center;margin-bottom:3rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.section-header h2{font-size:2rem;font-weight:400;color:#000;letter-spacing:-.01em;margin:0}.section-header p{font-size:.875rem;color:#666;letter-spacing:.03em;text-transform:uppercase;margin:0}.carousel-container{position:relative;max-width:1400px;margin:0 auto;padding:0 70px}.carousel-track{display:flex;gap:2rem;justify-content:center;padding:1rem 0}.event-card{flex:0 0 calc(33.333% - 1.333rem);min-width:0;background:#fff;border:1px solid #e5e5e5;overflow:hidden;transition:all .3s ease;cursor:pointer}.event-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #00000014;border-color:#c5a028}.event-card-image{height:200px;background:#f5f3f0;position:relative;overflow:hidden}.event-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.event-card:hover .event-card-image img{transform:scale(1.05)}.event-card-image-badges{position:absolute;top:12px;left:12px;display:flex;flex-wrap:wrap;gap:8px;z-index:2}.event-type-badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);box-shadow:0 1px 2px #0000001a}.event-title{font-size:1.125rem;font-weight:600;color:#000;margin-bottom:.5rem;line-height:1.4;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.event-date{color:#c5a028;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin-bottom:.5rem}.event-description{font-size:.8rem;color:#555;line-height:1.5;margin:.5rem 0;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.carousel-container{position:relative;max-width:1400px;margin:0 auto;padding:0 60px}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:#fff;border:1px solid #e5e5e5;border-radius:50%;width:44px;height:44px;cursor:pointer;font-size:1.5rem;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:10;color:#000;box-shadow:0 2px 8px #0000001a}.event-card-full-overlay{position:absolute;inset:0;background:#000000b3;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:3}.availability-available{display:inline-block;padding:4px 10px;background:#d1fae5;color:#065f46;border-radius:20px;font-size:.7rem;font-weight:600}.availability-full{display:inline-block;padding:4px 10px;background:#fee2e2;color:#991b1b;border-radius:20px;font-size:.7rem;font-weight:600}.event-card-body{padding:1.25rem;display:flex;flex-direction:column;flex:1}.event-image{width:100%;height:100%;object-fit:cover}.event-icon{font-size:4rem;opacity:.7}.event-card-content{padding:1.5rem}.event-card-content h3{font-size:1.125rem;font-weight:500;color:#000;margin-bottom:.5rem}.event-date{color:#c5a028;font-size:.75rem;font-weight:500;margin-bottom:.5rem;letter-spacing:.03em}.event-description{font-size:.875rem;color:#555;line-height:1.5;margin:.75rem 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-clamp:3;overflow:hidden}.event-location{font-size:.7rem;color:#888;margin-top:.75rem;text-transform:uppercase}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:#fff;border:1px solid #e5e5e5;border-radius:0;width:48px;height:48px;cursor:pointer;font-size:1.5rem;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:10;color:#000}.carousel-btn:hover{background:#c5a028;color:#fff;border-color:#c5a028}.carousel-btn.prev{left:0}.carousel-btn.next{right:0}.quick-links-section{position:relative;padding:5rem 2rem;background:linear-gradient(#00000080,#00000080),url(https://365thingsinhouston.com/wp-content/uploads/2017/08/museum-of-fine-arts-houston-Beck-Interior-Gallery.jpeg) no-repeat center center / cover;background-attachment:fixed}.quick-links-section .section-header h2,.quick-links-section .section-header p{color:#fff;position:relative;z-index:2}.links-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;position:relative;z-index:2}.link-card{background:#fffffff2;padding:2.5rem;text-decoration:none;text-align:center;transition:all .3s ease;border:1px solid rgba(229,229,229,.3);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:12px}.link-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0003;border-color:#c5a028;background:#fff}.link-card h3{font-size:1.25rem;font-weight:500;color:#000;letter-spacing:.05em;text-transform:uppercase;margin-bottom:.75rem}.link-card p{color:#666;font-size:.875rem;line-height:1.5;margin-bottom:1rem}.extras-section{position:relative;padding:5rem 2rem;background:#f5f3f0;overflow:hidden}.extras-section .section-header h2,.extras-section .section-header p{color:#000}.extras-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;position:relative;z-index:2}.extras-card{background:transparent;padding:2rem;text-decoration:none;text-align:left;transition:all .3s ease;border:none;position:relative;border-left:3px solid #c5a028}.extras-card:hover{transform:translate(8px);background:#fffc;box-shadow:-10px 10px 20px #0000000d}.extras-card h3{font-size:1.25rem;font-weight:500;color:#000;letter-spacing:.05em;text-transform:uppercase;margin-bottom:.75rem}.extras-card p{color:#666;font-size:.875rem;line-height:1.6;margin-bottom:1.25rem}.extras-link{color:#c5a028;text-decoration:none;font-size:.75rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.5rem;transition:all .2s ease}.extras-link:hover:after{transform:translate(4px)}.extras-link:hover{color:#d4af37}.home-footer{background:#000;color:#888;padding:3rem 2rem 1rem}.footer-content{max-width:1200px;margin:0 auto 2rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.footer-section h3,.footer-section h4{color:#fff;font-weight:400;font-size:.875rem;letter-spacing:.03em;margin-bottom:1rem}.footer-section p{font-size:.75rem;color:#888;margin:.5rem 0}.loading-spinner{text-align:center;padding:3rem;font-size:.875rem;color:#888}@media(min-width:1200px){.event-card{flex:0 0 calc(33.333% - 1.333rem)}}@media(min-width:992px)and (max-width:1199px){.event-card{flex:0 0 calc(33.333% - 1.333rem)}.carousel-container{padding:0 60px}}@media(min-width:768px)and (max-width:991px){.event-card{flex:0 0 calc(50% - 1rem)}.carousel-container{padding:0 50px}.carousel-track{gap:1.5rem}}@media(min-width:576px)and (max-width:767px){.event-card{flex:0 0 calc(50% - .75rem)}.carousel-container{padding:0 45px}.carousel-track{gap:1rem}.carousel-btn{width:40px;height:40px;font-size:1.2rem}.event-card-image{height:160px}.event-card-content{padding:1rem}.event-card-content h3{font-size:1rem}}@media(max-width:575px){.hero-title{font-size:2rem}.hero-description{font-size:.875rem}.events-section{padding:2rem 1rem}.carousel-container{padding:0 35px}.carousel-btn{width:36px;height:36px;font-size:1rem}.carousel-track{flex-direction:column;gap:1rem}.event-card{flex:0 0 100%}.event-card-image{height:180px}.links-grid,.extras-grid,.footer-content{grid-template-columns:1fr}.extras-card{padding:1.5rem}.extras-card h3{font-size:1rem}.footer-content{text-align:center}.quick-links-section,.extras-section{background-attachment:scroll}}.visit-page{max-width:1200px;margin:0 auto;padding:2rem 2rem 5rem}.visit-hero{padding:3rem 0 2.5rem;border-bottom:1px solid #e5e7eb;margin-bottom:3rem}.visit-eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:#9ca3af;margin:0 0 .5rem}.visit-title{font-size:3rem;font-weight:300;letter-spacing:-.03em;margin:0 0 .75rem;color:#111827}.visit-subtitle{font-size:1rem;color:#6b7280;margin:0}.visit-section{margin-bottom:4rem;padding:2rem 0;border-bottom:1px solid #f3f4f6}.visit-section:last-child{border-bottom:none;margin-bottom:0}.section-container{display:flex;flex-wrap:wrap;gap:3rem}.section-content{flex:1;min-width:280px}.section-content.full-width{width:100%;flex:100%}.visit-section h2{font-size:1.5rem;font-weight:400;letter-spacing:-.02em;color:#111827;margin:0 0 .5rem}.section-subtitle{font-size:.85rem;color:#9ca3af;margin:0 0 1.5rem;text-transform:uppercase;letter-spacing:.05em}.directions-info p{color:#4b5563;line-height:1.6;margin-bottom:.5rem;font-size:.95rem}.directions-info p strong{color:#c5a028}.directions-link{display:inline-block;margin:.75rem 0;color:#c5a028;text-decoration:none;font-weight:500;transition:color .2s}.directions-link:hover{color:#d4af37;text-decoration:underline}.directions-divider{height:1px;background:#e5e7eb;margin:1rem 0}.section-image{flex:1;min-width:280px;background:#f3f4f6;border-radius:4px;overflow:hidden}.map-placeholder{width:100%;height:100%;min-height:380px;display:flex;align-items:center;justify-content:center;background:#f9fafb}.map-placeholder img{width:100%;height:100%;object-fit:cover}.tickets-container{align-items:stretch}.ticket-prices{margin-bottom:2rem;overflow-x:auto}.price-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e5e7eb}.price-table th{text-align:left;padding:1rem;background:#f9fafb;color:#374151;font-weight:500;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em;border-bottom:1px solid #e5e7eb}.price-table td{padding:.875rem 1rem;border-bottom:1px solid #f3f4f6;color:#4b5563;font-size:.9rem}.price-table td.price{font-weight:600;color:#c5a028}.price-table td.details{font-size:.8rem;color:#9ca3af}.membership-link{color:#c5a028;text-decoration:none;font-weight:500;transition:color .2s}.membership-link:hover{color:#d4af37;text-decoration:underline}.ticket-action-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;margin-top:1rem;padding:1.5rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px}.purchase-btn{padding:.875rem 3rem;background:#c5a028;color:#000;border:none;font-size:1rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease;border-radius:4px}.purchase-btn:hover{background:#d4af37;transform:translateY(-2px)}.member-note{margin-top:.75rem;font-size:.75rem;color:#9ca3af}.hours-list{display:flex;flex-direction:column;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;margin-bottom:2rem}.hour-row{display:flex;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #f3f4f6;background:#fff}.hour-row:last-child{border-bottom:none}.hour-row .day{flex:0 0 120px;font-weight:600;color:#111827}.hour-row .hours{flex:1;color:#4b5563}.hour-row .note{flex:0 0 auto;font-size:.7rem;color:#c5a028;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.hour-row.closed{background:#fef2f2}.hour-row.closed .hours{color:#dc2626;font-weight:500}.holiday-info{padding:1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;text-align:center}.holiday-info p{margin:0;color:#6b7280;font-size:.85rem}@media(max-width:768px){.visit-page{padding:1rem 1rem 3rem}.visit-title{font-size:2rem}.visit-hero{padding:2rem 0 1.5rem;margin-bottom:2rem}.section-container{flex-direction:column;gap:1.5rem}.hour-row{flex-wrap:wrap;gap:.5rem;padding:.875rem 1rem}.hour-row .day{flex:0 0 100px}.hour-row .note{margin-left:auto}.map-placeholder{min-height:250px}.visit-section{padding:1rem 0;margin-bottom:2rem}.purchase-btn{width:100%;padding:.875rem 1rem}}.address-link{display:inline-block;color:#4b5563;text-decoration:none;line-height:1.6;margin:.5rem 0;transition:all .2s}.address-link:hover{color:#c5a028;text-decoration:underline;cursor:pointer}.artists-gallery{max-width:1200px;margin:0 auto;padding:2rem}.gallery-header{text-align:center;margin-bottom:3rem}.gallery-header h1{font-size:2.5rem;color:#1a1a2e;margin-bottom:.5rem}.gallery-header p{font-size:1.1rem;color:#666}.gallery-filters{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem;flex-wrap:wrap}.search-input,.nationality-filter{padding:.75rem 1rem;border:1px solid #ddd;border-radius:8px;font-size:1rem;min-width:250px}.search-input:focus,.nationality-filter:focus{outline:none;border-color:#e67e22}.artists-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}.artist-card-large{display:flex;gap:1.5rem;background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 10px #0000001a;transition:transform .3s ease,box-shadow .3s ease}.artist-card-large:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00000026}.artist-avatar-large{font-size:4rem;flex-shrink:0}.artist-info{flex:1}.artist-info h2{font-size:1.25rem;margin-bottom:.25rem;color:#1a1a2e}.artist-nationality{color:#e67e22;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.artist-years{font-size:.875rem;color:#666;margin-bottom:.75rem}.artist-bio-preview{font-size:.875rem;color:#555;line-height:1.5;margin-bottom:1rem}.view-artist-btn{color:#e67e22;text-decoration:none;font-weight:600;font-size:.875rem;transition:color .2s}.view-artist-btn:hover{color:#d35400}.no-results{text-align:center;padding:3rem;color:#666}.loading-spinner{text-align:center;padding:3rem;font-size:1.2rem;color:#666}@media(max-width:768px){.artists-gallery{padding:1rem}.artists-grid{grid-template-columns:1fr}.artist-card-large{flex-direction:column;text-align:center}.gallery-filters{flex-direction:column}.search-input,.nationality-filter{width:100%}}.artworks-page{max-width:1200px;margin:0 auto;padding:2rem 2rem 5rem}.artworks-hero{padding:3rem 0 2.5rem;border-bottom:1px solid #e5e7eb;margin-bottom:2rem}.artworks-eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:#9ca3af;margin:0 0 .5rem}.artworks-title{font-size:3rem;font-weight:300;letter-spacing:-.03em;margin:0 0 .75rem;color:#111827}.artworks-subtitle{font-size:1rem;color:#6b7280;margin:0}.artworks-search{margin-bottom:2rem}.artworks-search-input{width:100%;padding:.875rem 1rem;border:1px solid #e5e7eb;font-size:.9rem;background:#fff;color:#111827;transition:border-color .2s ease}.artworks-search-input:focus{outline:none;border-color:#c5a028}.artworks-filters{margin-bottom:2rem;padding:1.5rem;background:#f9fafb;border:1px solid #e5e7eb}.filters-row{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.filter-group label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;margin-bottom:.25rem}.filter-select-btn{width:100%;padding:.625rem 1rem;background:#fff;border:1px solid #e5e7eb;font-size:.85rem;color:#111827;cursor:pointer;display:flex;justify-content:space-between;align-items:center;text-align:left;white-space:nowrap;overflow:hidden}.filter-arrow{font-size:.7rem;color:#9ca3af}.filter-dropdown{position:absolute;top:100%;left:0;right:0;max-height:250px;overflow-y:auto;background:#fff;border:1px solid #e5e7eb;border-top:none;z-index:100;box-shadow:0 4px 12px #00000014}.filter-option span{line-height:1.4}.filter-group select.filter-select{width:100%;padding:.625rem 2rem .625rem 1rem;background:#fff;border:1px solid #e5e7eb;font-size:.85rem;color:#111827;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 1rem center;background-size:1rem}.filter-group select.filter-select:hover{border-color:#c5a028}.filter-group select.filter-select:focus{outline:none;border-color:#c5a028}.filters-clear{padding:.625rem 1.5rem;background:transparent;border:1px solid #e5e7eb;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease}.artworks-active-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;padding:1rem;background:#f9fafb;border:1px solid #e5e7eb}.filter-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;background:#fff;border:1px solid #e5e7eb;font-size:.75rem;color:#4b5563;cursor:pointer;transition:all .2s ease}.artworks-count{margin-bottom:2rem;font-size:.8rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.artworks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem}.artwork-card{background:#fff;border:1px solid #e5e7eb;transition:all .3s ease;cursor:pointer;overflow:hidden}.artwork-card:hover{border-color:#c5a028;transform:translateY(-3px);box-shadow:0 8px 20px #00000014}.artwork-image{width:100%;height:260px;overflow:hidden;background:#f3f4f6}.artwork-image-img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.artwork-card:hover .artwork-image-img{transform:scale(1.03)}.artwork-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;color:#d1d5db;background:#f9fafb}.artwork-info{padding:1.5rem}.artwork-info h3{font-size:1.1rem;font-weight:500;margin:0 0 .25rem;color:#111827}.artwork-artist{font-size:.85rem;color:#c5a028;margin:0 0 .75rem}.artwork-meta{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #f3f4f6;font-size:.7rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em}.artwork-description{font-size:.85rem;color:#6b7280;line-height:1.5;margin:0}.artworks-empty{text-align:center;padding:4rem;color:#9ca3af;background:#f9fafb;border:1px solid #e5e7eb}.artworks-loading{text-align:center;padding:4rem;color:#9ca3af}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.artwork-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .25s ease}.artwork-modal-overlay.closing{animation:fadeOut .2s ease forwards}.artwork-modal{background:#fff;width:100%;max-width:900px;max-height:90vh;position:relative;box-shadow:0 24px 60px #00000040;overflow:hidden;animation:slideUp .25s ease;display:flex;flex-direction:column}.artwork-modal-topbar{background:#c5a028;height:48px;display:flex;align-items:center;justify-content:flex-end;padding-right:1rem;flex-shrink:0}.artwork-modal-close-btn{background:none;border:none;font-size:1.4rem;color:#111827;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .15s}.artwork-modal-close-btn:hover{background:#0000001a}.artwork-modal-inner{display:grid;grid-template-columns:1fr 1fr;flex:1;overflow:hidden}.artwork-modal-image-wrap{background:#111827;display:flex;align-items:center;justify-content:center;padding:1.5rem;min-height:400px}.artwork-modal-image{width:100%;height:100%;object-fit:contain;max-height:500px}.artwork-modal-placeholder{font-size:4rem;color:#d1d5db}.artwork-modal-title{font-size:1.4rem;font-weight:600;color:#111827;margin:0 0 .75rem}.artwork-modal-status{display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;margin-bottom:1.25rem}.artwork-modal-section-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#9ca3af;margin:0 0 .5rem}.artwork-modal-artist-name{font-size:1rem;font-weight:600;color:#111827;margin:0 0 .2rem}.artwork-modal-meta{font-size:.82rem;color:#6b7280;margin:0 0 .75rem}.artwork-modal-bio{font-size:.85rem;color:#4b5563;line-height:1.7;margin:0}.artwork-modal-table{width:100%;border-collapse:collapse;font-size:.85rem}.artwork-modal-table tr{border-bottom:1px solid #f3f4f6}.artwork-modal-table tr:last-child{border-bottom:none}.artwork-modal-table td{padding:.5rem 0;color:#374151;vertical-align:top}.table-label{color:#9ca3af;font-weight:600;width:40%;padding-right:1rem}.artwork-modal-description{font-size:.9rem;color:#4b5563;line-height:1.75;margin:0}@media(max-width:768px){.artworks-page{padding:1rem 1rem 3rem}.artworks-title{font-size:2rem}.artworks-hero{padding:2rem 0 1.5rem;margin-bottom:1.5rem}.filters-row{flex-direction:column}.filter-group,.filters-clear{width:100%}.artworks-grid{grid-template-columns:1fr;gap:1rem}.artwork-image{height:200px}.artwork-modal-inner{grid-template-columns:1fr}.artwork-modal-image-wrap{min-height:250px}}.artwork-modal-location{font-size:.9rem;color:#4b5563;line-height:1.6;margin:0}.artwork-modal-location strong{color:#111827;font-weight:600}.location-building{font-size:.9rem;color:#111827;margin:0 0 .25rem}.location-building strong{font-weight:600}.location-not-available{font-size:.85rem;color:#9ca3af;font-style:italic;margin:0}.artwork-modal-bio-full{font-size:.85rem;color:#4b5563;line-height:1.7;margin:0;max-height:none;overflow:visible;white-space:normal}.artwork-modal-location{margin-top:.5rem}.location-building{font-size:.9rem;color:#111827;margin:0 0 .25rem;font-weight:500}.location-gallery{font-size:.85rem;color:#6b7280;margin:0}.location-floor{color:#9ca3af}.artwork-modal-info{padding:2rem;overflow-y:auto;max-height:calc(90vh - 48px)}.artwork-modal-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #f3f4f6}.artwork-modal-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.exhibitions-page{max-width:1200px;margin:0 auto;padding:2rem 2rem 4rem}.exhibitions-hero{padding:3rem 0 2rem;border-bottom:1px solid #e5e7eb;margin-bottom:2rem}.exhibitions-eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:#9ca3af;margin:0 0 .5rem}.exhibitions-title{font-size:3rem;font-weight:300;letter-spacing:-.03em;margin:0 0 .75rem;color:#111827}.exhibitions-subtitle{font-size:1rem;color:#6b7280;margin:0}.exhibitions-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:0 24px;margin-bottom:8px}.exhibitions-filters{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.filter-btn{padding:.4rem 1.1rem;border:1.5px solid #e5e7eb;background:transparent;font-size:.82rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease;letter-spacing:.02em}.filter-btn:hover{border-color:#111827;color:#111827}.filter-active{background:#111827;border-color:#111827;color:#fff}.btn-archived-toggle{background:transparent;border:1.5px solid #888;color:#888;padding:7px 16px;border-radius:20px;font-size:.85rem;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-archived-toggle:hover,.archived-toggle-active{background:#333;border-color:#ccc;color:#fff}.exhibitions-count{font-size:.82rem;color:#9ca3af;margin:0 0 1.5rem}.exhibitions-empty,.exhibitions-loading{color:#9ca3af;text-align:center;padding:4rem 0}.exhibitions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.exhibition-card{position:relative;overflow:hidden;border:1px solid #e5e7eb;background:#fff;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.exhibition-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0000001a}.card-visual{background:var(--card-accent, #1a1a2e);height:120px;display:flex;align-items:flex-start;justify-content:space-between;padding:1rem}.card-paintings-banner{position:relative;display:flex;overflow:hidden;height:160px;background:var(--card-accent)}.banner-img-wrap{position:absolute;inset:0;width:100%;height:100%}.banner-img-wrap:nth-child(1){clip-path:inset(0 66% 0 0)}.banner-img-wrap:nth-child(2){clip-path:inset(0 33% 0 33%)}.banner-img-wrap:nth-child(3){clip-path:inset(0 0 0 66%)}.card-paintings-banner:has(.banner-img-wrap:only-child) .banner-img-wrap{clip-path:none}.card-paintings-banner:has(.banner-img-wrap:nth-child(2)):not(:has(.banner-img-wrap:nth-child(3))) .banner-img-wrap:nth-child(1){clip-path:inset(0 50% 0 0)}.card-paintings-banner:has(.banner-img-wrap:nth-child(2)):not(:has(.banner-img-wrap:nth-child(3))) .banner-img-wrap:nth-child(2){clip-path:inset(0 0 0 50%)}.banner-img{width:100%;height:100%;object-fit:cover;display:block}.card-badges{position:absolute;top:10px;left:10px;display:flex;gap:6px;z-index:10}.card-type-badge{display:inline-block;padding:.2rem .65rem;border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.badge-permanent{background:#111827;color:#fff;border:1px solid rgba(255,255,255,.2)}.badge-traveling{background:#fee2e2;color:#991b1b}.card-status{font-size:.7rem;font-weight:600;padding:.2rem .65rem;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.status-upcoming{background:#fef3c7;color:#92400e}.status-ended{background:#ffffff26;color:#ffffffb3}.card-body{padding:1.25rem}.card-title{font-size:1rem;font-weight:600;color:#111827;margin:0 0 .5rem;line-height:1.4}.card-gallery{font-size:.78rem;color:#9ca3af;margin:0 0 .75rem}.card-dates{display:flex;align-items:center;gap:.4rem;font-size:.78rem;color:#6b7280;flex-wrap:wrap;margin-bottom:.75rem}.card-dates-sep{color:#d1d5db}.card-cta{font-size:.75rem;color:#9ca3af;margin:0;font-style:italic}.card-actions{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.btn-archive{background:transparent;border:1px solid #c0392b55;color:#c0392b;padding:4px 10px;border-radius:12px;font-size:.75rem;cursor:pointer;transition:all .2s}.btn-archive:hover{background:#c0392b;color:#fff}.archived-panel{background:#111;border:1px solid #333;border-radius:12px;margin:0 24px 24px;padding:20px 24px}.archived-heading{font-size:1.1rem;font-weight:600;color:#ccc;margin-bottom:16px}.archived-loading,.archived-empty{color:#666;font-size:.9rem}.archived-list{display:flex;flex-direction:column;gap:10px}.archived-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#1a1a1a;border-radius:8px;border:1px solid #2a2a2a}.archived-info{display:flex;flex-direction:column;gap:2px}.archived-name{font-size:.95rem;font-weight:600;color:#ddd}.archived-gallery{font-size:.8rem;color:#888}.archived-dates{font-size:.78rem;color:#666}.btn-restore{background:#1a3a1a;border:1px solid #2a6a2a;color:#6fcf6f;padding:6px 14px;border-radius:16px;font-size:.82rem;cursor:pointer;white-space:nowrap;transition:all .2s}.btn-restore:hover{background:#2a6a2a;color:#fff}.cal-overlay{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.cal-modal{background:#fff;border-radius:16px;width:100%;max-width:800px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 24px 60px #0003}.cal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.4rem;color:#6b7280;cursor:pointer;line-height:1;z-index:1}.cal-close:hover{color:#111827}.cal-header{padding:1.5rem 1.5rem 1rem;border-bottom:1px solid #f3f4f6}.cal-title{font-size:1.1rem;font-weight:600;color:#111827;margin:0 0 .25rem;padding-right:2rem;line-height:1.4}.cal-gallery{font-size:.78rem;color:#9ca3af;margin:0 0 1rem}.cal-date-range{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.82rem}.cal-start-label,.cal-end-label{font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.cal-date-val{color:#111827;font-weight:500}.cal-arrow{color:#d1d5db}.cal-body{padding:1.25rem 1.5rem 1.5rem}.cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.cal-month-label{font-weight:600;font-size:.95rem;color:#111827}.cal-nav-btn{background:none;border:1px solid #e5e7eb;border-radius:6px;width:32px;height:32px;font-size:1.1rem;cursor:pointer;color:#374151;display:flex;align-items:center;justify-content:center;transition:background .15s}.cal-nav-btn:hover{background:#f3f4f6}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.cal-day-header{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;text-align:center;padding:.3rem 0}.cal-day,.cal-empty{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:.82rem;border-radius:6px;color:#374151}.cal-empty{background:transparent}.cal-day{cursor:default}.cal-day:not(.start-day):not(.end-day):not(.in-range):not(.today):hover{background:#f9fafb}.start-day{background:#c5a028!important;color:#fff!important;font-weight:700;border-radius:6px 0 0 6px}.end-day{background:#111827!important;color:#fff!important;font-weight:700;border-radius:0 6px 6px 0}.in-range{background:#f3f0e6;color:#111827;border-radius:0}.today{border:2px solid #c5a028;font-weight:600;color:#c5a028}.cal-legend{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1.25rem;font-size:.72rem;color:#6b7280}.legend-dot{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:4px;vertical-align:middle}.start-dot{background:#c5a028}.end-dot{background:#111827}.range-dot{background:#f3f0e6;border:1px solid #d1d5db}.today-dot{background:transparent;border:2px solid #c5a028}.cal-paintings-section{background:#1a1a1a;padding:24px;margin:0 -24px -24px;border-top:1px solid #222;text-align:center}.cal-paintings-heading{font-size:1rem;font-weight:600;color:#ccc;margin-bottom:16px}.cal-paintings-loading,.cal-paintings-empty{color:#666;font-size:.88rem;text-align:center}.cal-painting-img{width:100%;height:140px;object-fit:contain;background:#f5f5f5}.cal-painting-placeholder{height:140px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;font-size:2rem}.cal-painting-info{padding:8px 10px 10px}.cal-painting-title{font-size:.82rem;font-weight:600;color:#ddd;margin:0 0 2px}.cal-painting-artist{font-size:.75rem;color:#888;margin:0 0 4px}.cal-painting-desc{font-size:.73rem;color:#7e7e7e;line-height:1.4;margin:0}.exhibitions-search{margin-bottom:1rem}.exhibitions-search-input{width:100%;padding:.75rem 1rem;border:1px solid #e5e7eb;font-size:.9rem;font-family:inherit;color:#111827;background:#fff;transition:border-color .15s;outline:none}.exhibitions-search-input:focus{border-color:#c5a028}.exhibitions-filters-bar{margin-bottom:1rem;padding:1.25rem;background:#fff;border:1px solid #e5e7eb}.filters-row{display:flex;gap:1rem;flex-wrap:wrap;align-items:flex-end}.filter-group{flex:1;min-width:140px;display:flex;flex-direction:column;gap:.35rem}.filter-group label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#9ca3af}.filter-select-wrapper{position:relative}.filter-select-btn{width:100%;padding:.55rem .875rem;background:#fff;border:1px solid #e5e7eb;font-size:.85rem;font-family:inherit;color:#374151;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:border-color .15s;white-space:nowrap;overflow:hidden}.filter-select-btn span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-select-btn:hover{border-color:#c5a028}.filter-arrow{font-size:.6rem;color:#9ca3af;margin-left:.5rem}.filter-dropdown{position:absolute;top:100%;left:0;right:0;max-height:220px;overflow-y:auto;background:#fff;border:1px solid #e5e7eb;border-top:none;z-index:100;box-shadow:0 4px 12px #00000014}.filter-option{display:flex;align-items:center;gap:.6rem;padding:.55rem .875rem;cursor:pointer;font-size:.85rem;color:#6b7280;border-left:3px solid transparent;transition:all .12s;white-space:nowrap}.filter-option:hover{background:#faf9f8;border-left-color:#c5a028;color:#111827}.filter-option.selected{background:#fef9ec;border-left-color:#c5a028;color:#111827;font-weight:500}.filter-option-check{width:14px;font-size:11px;color:#c5a028;flex-shrink:0;text-align:center}.filter-option-label{padding-left:0}.filter-select{width:100%;padding:.55rem .875rem;border:1px solid #e5e7eb;font-size:.85rem;font-family:inherit;color:#374151;background:#fff;cursor:pointer;transition:border-color .15s;outline:none}.filter-select:hover,.filter-select:focus{border-color:#c5a028}.filters-clear{padding:.55rem 1.25rem;background:transparent;border:1px solid #e5e7eb;font-size:.78rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;cursor:pointer;transition:all .15s;white-space:nowrap;align-self:flex-end}.filters-clear:hover{border-color:#c5a028;color:#c5a028}.exhibitions-active-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.filter-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;background:#faf9f8;border:1px solid #e5e7eb;font-size:.75rem;color:#374151;cursor:pointer;transition:all .15s}.filter-tag:hover{border-color:#c5a028;color:#c5a028}.cal-date-info{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin:1rem 0;flex-wrap:wrap}.cal-date-card{background:#f9fafb;padding:.75rem 1.25rem;border-radius:8px;text-align:center;min-width:140px;border:1px solid #e5e7eb}.cal-date-label{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;margin-bottom:.25rem}.cal-date-value{display:block;font-size:.85rem;font-weight:600;color:#111827}.cal-date-arrow{font-size:1.2rem;color:#c5a028}.cal-countdown{text-align:center;padding:.75rem;background:#fef3c7;border-radius:8px;margin-top:.75rem}.cal-countdown-number{font-size:1.5rem;font-weight:700;color:#92400e;margin-right:.5rem}.cal-countdown-label{font-size:.8rem;color:#92400e}.cal-countdown.expired{background:#fee2e2}.cal-countdown.expired span{color:#991b1b}.cal-timeline{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.cal-timeline-heading{font-size:.8rem;font-weight:600;color:#6b7280;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.05em}.timeline-bar{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.timeline-progress{height:100%;background:#c5a028;border-radius:3px;transition:width .3s ease}.timeline-labels{display:flex;justify-content:space-between;margin-top:.5rem;font-size:.7rem;color:#9ca3af}.cal-paintings-section{background:#faf9f8;padding:1rem;border-radius:8px}.cal-paintings-heading{font-size:.9rem;font-weight:600;color:#111827;margin-bottom:1rem}.cal-paintings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.cal-painting-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:transform .2s;display:flex;flex-direction:column}.cal-painting-card:hover{transform:translateY(-2px)}.cal-painting-img{width:100%;height:120px;object-fit:cover}.cal-painting-placeholder{height:120px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;font-size:2rem}.cal-painting-info{padding:.5rem;flex-shrink:0}.cal-painting-title{font-size:.75rem;font-weight:600;color:#111827;margin:0 0 .2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-painting-artist{font-size:.65rem;color:#6b7280;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.filter-option .filter-option-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.events-page{max-width:1200px;margin:0 auto;padding:2rem 2rem 4rem}.events-hero{padding:2rem 0;border-bottom:1px solid #e5e7eb;margin-bottom:2rem}.events-eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:#9ca3af;margin:0 0 .5rem}.events-title{font-size:3rem;font-weight:300;letter-spacing:-.03em;margin:0 0 .75rem;color:#111827}.events-subtitle{font-size:1rem;color:#6b7280;margin:0}.events-filters{margin-bottom:2rem;padding:1.5rem;background:#fff;border:1px solid #e5e7eb}.events-type-filters{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #f3f4f6}.events-type-btn{padding:.5rem 1.25rem;border:1px solid #e5e7eb;background:transparent;font-size:.8rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease;letter-spacing:.03em}.events-type-btn:hover{border-color:#c5a028;color:#c5a028}.events-type-btn.active{background:#c5a028;border-color:#c5a028;color:#000}.events-filter-controls{display:flex;gap:1rem;flex-wrap:wrap;align-items:flex-end}.events-filter-group{display:flex;flex-direction:column;gap:.3rem}.events-filter-group label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;font-weight:500}.events-filter-group input,.events-filter-group select{padding:.5rem .75rem;border:1px solid #e5e7eb;font-size:.85rem;background:#fff;color:#111827;min-width:140px}.events-filter-group input:focus,.events-filter-group select:focus{outline:none;border-color:#c5a028}.events-available-check{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#6b7280;cursor:pointer;padding-bottom:.25rem}.events-available-check input{width:16px;height:16px;accent-color:#c5a028;cursor:pointer}.events-clear-btn{padding:.5rem 1rem;background:transparent;border:1px solid #e5e7eb;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;cursor:pointer;transition:all .2s}.events-clear-btn:hover{border-color:#c5a028;color:#c5a028}.events-count{font-size:.8rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.events-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.event-card{background:#fff;border:1px solid #e5e7eb;padding:1.25rem;transition:all .3s ease;display:flex;flex-direction:column}.event-card:hover{border-color:#c5a028;transform:translateY(-2px);box-shadow:0 8px 20px #0000000d}.event-card-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.event-title{font-size:1rem;font-weight:500;color:#111827;margin:0;letter-spacing:-.01em;line-height:1.3}.event-badges{display:flex;gap:.5rem;flex-wrap:wrap}.event-type-badge{padding:.15rem .6rem;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.event-member-badge{padding:.15rem .6rem;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:#fef9c3;color:#854d0e}.event-date{font-size:.75rem;color:#c5a028;font-weight:500;margin-bottom:.5rem}.event-description{font-size:.8rem;color:#6b7280;line-height:1.5;margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-clamp:3;overflow:hidden}.event-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:.75rem;border-top:1px solid #f3f4f6}.event-availability{font-size:.75rem;font-weight:500}.availability-full{color:#dc2626}.availability-available{color:#10b981}.availability-available.low-stock{color:#f59e0b}.event-quantity{display:flex;align-items:center;gap:.4rem}.event-quantity label{font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af}.event-quantity input{width:55px;padding:.25rem .4rem;border:1px solid #e5e7eb;font-size:.75rem;text-align:center}.event-quantity input:focus{outline:none;border-color:#c5a028}.event-member-message{margin:.5rem 0;padding:.4rem .6rem;background:#fef9c3;border-left:3px solid #c5a028;font-size:.7rem;color:#854d0e}.event-member-message a{color:#c5a028;text-decoration:none;font-weight:500}.event-member-message a:hover{text-decoration:underline}.event-message{margin:.5rem 0;padding:.4rem .6rem;font-size:.7rem}.event-message.success{background:#d1fae5;color:#065f46;border-left:3px solid #10b981}.event-message.error{background:#fee2e2;color:#991b1b;border-left:3px solid #dc2626}.event-signup-btn{width:100%;padding:.6rem;background:#c5a028;color:#000;border:none;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease;margin-top:.75rem}.event-signup-btn:hover:not(.disabled){background:#d4af37;transform:translateY(-1px)}.event-signup-btn.disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}@media(min-width:1024px){.events-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:768px)and (max-width:1023px){.events-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.events-grid{grid-template-columns:1fr}}.events-empty{text-align:center;padding:4rem;background:#f9fafb;border:1px solid #e5e7eb}.events-empty p{color:#6b7280;margin-bottom:1rem}.events-reset-btn{padding:.5rem 1.5rem;background:transparent;border:1px solid #c5a028;color:#c5a028;cursor:pointer;transition:all .2s}.events-reset-btn:hover{background:#c5a028;color:#000}.events-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.loading-spinner{width:40px;height:40px;border:2px solid #e5e7eb;border-top-color:#c5a028;animation:spin .8s linear infinite}.events-loading p{color:#9ca3af}@media(max-width:768px){.events-page{padding:1rem 1rem 3rem}.events-hero{padding:1.5rem 0}.events-title{font-size:2rem}.events-filters{padding:1rem}.events-filter-controls{flex-direction:column}.events-filter-group input,.events-filter-group select{min-width:auto;width:100%}.events-available-check{margin-top:.25rem}.events-clear-btn{width:100%}.event-card-header{flex-direction:column}.event-footer{flex-direction:column;align-items:flex-start}.event-quantity{width:100%;justify-content:space-between}.event-quantity input{width:80px}}@media(min-width:769px)and (max-width:1024px){.events-page{padding:1.5rem 1.5rem 3rem}}.buildings-page{max-width:1200px;margin:0 auto;padding:2rem 2rem 5rem}.buildings-hero{padding:3rem 0 2.5rem;border-bottom:1px solid #e5e7eb;margin-bottom:3rem}.buildings-eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:#9ca3af;margin:0 0 .5rem}.buildings-title{font-size:3rem;font-weight:300;letter-spacing:-.03em;margin:0 0 .75rem;color:#111827}.buildings-subtitle{font-size:1rem;color:#6b7280;margin:0}.buildings-loading,.buildings-empty{text-align:center;padding:4rem 0;color:#9ca3af}.buildings-list{display:flex;flex-direction:column;gap:4rem}.building-card{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.card-right{direction:rtl}.card-right .building-info{direction:ltr}.building-image-wrap{position:relative;width:100%;height:380px;overflow:hidden;border-radius:4px;background:#f3f4f6}.building-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.building-card:hover .building-image{transform:scale(1.03)}.building-image-placeholder{display:none;width:100%;height:100%;align-items:center;justify-content:center;font-size:3rem;color:#d1d5db;background:#f9fafb}.building-info{padding:1rem 0}.building-name{font-size:1.6rem;font-weight:400;letter-spacing:-.02em;color:#111827;margin:0 0 .5rem}.building-address{font-size:.82rem;color:#9ca3af;margin:0 0 1.25rem}.building-description{font-size:.95rem;color:#4b5563;line-height:1.75;margin:0 0 1.5rem}.building-meta{display:flex;gap:1.5rem;flex-wrap:wrap}.building-stat{font-size:.82rem;color:#6b7280;border-left:2px solid #e5e7eb;padding-left:.75rem}.building-stat strong{color:#111827;font-weight:600}.buildings-list .building-card+.building-card{padding-top:4rem;border-top:1px solid #f3f4f6}@media(max-width:768px){.building-card,.card-right{grid-template-columns:1fr;direction:ltr}.building-image-wrap{height:240px}.buildings-title{font-size:2rem}}.cafe-page{max-width:1200px;margin:0 auto;padding:2rem 2rem 4rem}.cafe-hero{padding:3rem 0 2rem;border-bottom:1px solid #e5e7eb;margin-bottom:2rem}.cafe-hero-content{text-align:center}.cafe-eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:#9ca3af;margin-bottom:.5rem}.cafe-title{font-size:3rem;font-weight:300;letter-spacing:-.03em;color:#111827;margin-bottom:.75rem}.cafe-subtitle{font-size:1rem;color:#6b7280;max-width:600px;margin:0 auto}.cafe-info-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin-bottom:2rem;padding:1rem;background:#fef9e7;border:1px solid #f3e5b5}.cafe-info-item{display:flex;align-items:center;gap:.75rem}.cafe-info-item:last-child{justify-content:flex-end}.info-icon{font-size:1.5rem}.cafe-info-item strong{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#8b6914}.cafe-info-item p{font-size:.8rem;color:#5c4a1e;margin:0}.cafe-cart-btn{padding:.5rem 1rem;background:#c5a028;color:#000;text-decoration:none;font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;transition:all .2s ease;display:inline-block;margin-left:0;white-space:nowrap}.cafe-cart-btn:hover{background:#d4af37;transform:translateY(-1px)}.cafe-filters-section{margin-bottom:2rem;padding:1.5rem;background:#fff;border:1px solid #e5e7eb}.cafe-search-bar{margin-bottom:1.5rem}.cafe-search-input{width:100%;padding:.75rem 1rem;border:1px solid #e5e7eb;font-size:.9rem}.cafe-search-input:focus{outline:none;border-color:#c5a028}.cafe-filters-grid{display:flex;flex-wrap:wrap;gap:1.25rem;align-items:flex-end}.price-range .price-inputs input{flex:1 1 0;min-width:0;height:39px}.stock-filter{display:flex;align-items:center;flex:0 0 auto;min-width:200px;margin-left:150px}.checkbox-label{display:inline-flex;align-items:center;justify-content:flex-start;gap:0;cursor:pointer;font-size:.85rem;color:#4b5563;margin-bottom:0;min-height:42px;white-space:nowrap;width:max-content;transform:translate(-14px) translateY(16px);margin-left:-40px}.checkbox-label input{width:16px;min-width:16px;max-width:16px;height:16px;flex:0 0 16px;accent-color:#c5a028;position:relative;top:3px;margin-right:-2px}.cafe-results-count{font-size:.8rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.cafe-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.cafe-card{background:#fff;border:1px solid #e5e7eb;transition:all .3s ease;overflow:hidden}.cafe-card:hover{transform:translateY(-4px);border-color:#c5a028;box-shadow:0 8px 20px #0000000d}.cafe-card-image-wrapper{position:relative;height:180px;background:#fef9e7;display:flex;align-items:center;justify-content:center;overflow:hidden}.cafe-card-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.cafe-card:hover .cafe-card-image{transform:scale(1.05)}.cafe-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;background:#fef9e7}.low-stock-badge{position:absolute;top:8px;right:8px;background:#f59e0b;color:#fff;font-size:.65rem;font-weight:600;padding:.25rem .5rem;text-transform:uppercase;letter-spacing:.05em}.sold-out-badge{position:absolute;top:8px;right:8px;background:#dc2626;color:#fff;font-size:.65rem;font-weight:600;padding:.25rem .5rem;text-transform:uppercase;letter-spacing:.05em}.cafe-card-body{padding:1rem;display:flex;flex-direction:column;gap:.5rem}.cafe-category{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af}.cafe-card-body h3{font-size:.95rem;font-weight:500;color:#111827;margin:0;line-height:1.4}.cafe-price{font-size:1rem;font-weight:600;color:#c5a028;margin:0}.cafe-price-block{display:grid;gap:.2rem}.cafe-price-original{font-size:.85rem;color:#9ca3af;text-decoration:line-through;margin:0}.cafe-member-discount{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:#8b6914;margin:0}.cafe-stock{font-size:.7rem;color:#6b7280;margin:0}.cafe-add-btn{width:100%;padding:.6rem;background:#c5a028;color:#000;border:none;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease;margin-top:.25rem}.cafe-add-btn:hover:not(:disabled){background:#d4af37;transform:translateY(-1px)}.cafe-add-btn:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.cafe-loading,.cafe-empty{text-align:center;padding:4rem;background:#f9fafb;border:1px solid #e5e7eb;color:#6b7280}.cafe-empty .reset-btn{margin-top:1rem;padding:.5rem 1.5rem;background:transparent;border:1px solid #c5a028;color:#c5a028;cursor:pointer}.cafe-empty .reset-btn:hover{background:#c5a028;color:#000}.cafe-message{padding:2rem;border:1px solid #e5e7eb;background:#fff;text-align:center}.cafe-message.error{color:#dc2626}.cafe-toast{position:fixed;bottom:2rem;right:2rem;padding:.75rem 1.25rem;background:#111827;color:#fff;font-size:.85rem;z-index:1000;animation:slideIn .3s ease}.cafe-auth-modal{max-width:460px;width:90%;background:#fff;border:1px solid #e5e7eb}.cafe-auth-modal .modal-header{padding:1.5rem 1.75rem;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.cafe-auth-modal .modal-header h2{font-size:1.25rem;font-weight:400;color:#111827;margin:0}.cafe-auth-modal .close-btn{background:none;border:none;font-size:1.5rem;color:#9ca3af;cursor:pointer;transition:color .2s}.cafe-auth-modal .close-btn:hover{color:#111827}.cafe-auth-body{padding:1.75rem}.cafe-auth-body p{font-size:.9rem;color:#6b7280;line-height:1.6;margin-bottom:1.5rem;text-align:center}.cafe-auth-actions{display:flex;gap:1rem;justify-content:center}.auth-btn{padding:.625rem 1.5rem;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;transition:all .2s ease}@media(max-width:1024px){.cafe-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.cafe-page{padding:1rem 1rem 3rem}.cafe-title{font-size:2rem}.cafe-info-bar{grid-template-columns:repeat(2,1fr)}.cafe-filters-grid{flex-direction:column}.filter-group,.clear-filters-btn{width:100%}.cafe-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.cafe-grid,.cafe-info-bar{grid-template-columns:1fr}.cafe-info-item:last-child{justify-content:flex-start}}.cafe-subpage-header{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.cafe-subpage-header h1{font-size:1.75rem;font-weight:400;color:#111827;margin:0}.cafe-subpage-header p{color:#6b7280;margin:.5rem 0 0}.cafe-subpage-header .btn-outline{padding:.625rem 1.5rem;background:transparent;border:1px solid #e5e7eb;color:#6b7280;text-decoration:none;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;transition:all .2s ease}.cafe-subpage-header .btn-outline:hover{border-color:#c5a028;color:#c5a028}.cafe-cart-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:1.5rem}.cafe-cart-items{display:grid;gap:1rem}.cafe-cart-card{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem;border:1px solid #e5e7eb;background:#fff;transition:all .2s ease}.cafe-cart-card:hover{border-color:#c5a028}.cafe-cart-card h2{font-size:1rem;font-weight:500;color:#111827;margin:0 0 .25rem}.cafe-cart-card .cafe-category{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;margin:0 0 .25rem}.cafe-cart-card .cafe-price{font-size:.9rem;font-weight:600;color:#c5a028;margin:0}.cafe-cart-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.cafe-cart-controls button{width:32px;height:32px;border:1px solid #e5e7eb;background:transparent;cursor:pointer;font-size:1rem;color:#4b5563;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.cafe-cart-controls button:hover{border-color:#c5a028;color:#c5a028}.cafe-cart-controls span{font-size:.9rem;font-weight:500;color:#111827;min-width:30px;text-align:center}.remove-link{background:transparent!important;border:1px solid #dc2626!important;color:#dc2626!important;width:auto!important;padding:0 12px!important;font-size:.7rem!important;text-transform:uppercase;letter-spacing:.05em}.remove-link:hover{background:#dc2626!important;color:#fff!important}.cafe-summary-card{background:#fff;border:1px solid #e5e7eb;padding:1.5rem;align-self:start;position:sticky;top:2rem}.cafe-summary-card h2{font-size:1.1rem;font-weight:500;color:#111827;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.cafe-summary-card p{font-size:.85rem;color:#6b7280;margin:.5rem 0}.cafe-summary-card strong{color:#111827}.cafe-total-row{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;margin-top:1rem;border-top:1px solid #e5e7eb;font-size:1rem;font-weight:600;color:#111827}.cafe-summary-card .btn-primary{width:100%;margin-top:1rem;padding:.75rem;background:#c5a028;color:#000;border:none;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease}.cafe-summary-card .btn-primary:hover{background:#d4af37;transform:translateY(-1px)}.cafe-message{text-align:center;padding:4rem;background:#f9fafb;border:1px solid #e5e7eb;color:#6b7280}@media(max-width:768px){.cafe-cart-layout{grid-template-columns:1fr}.cafe-cart-card{flex-direction:column;text-align:center}.cafe-cart-controls{justify-content:center}.cafe-summary-card{position:static}.cafe-subpage-header{flex-direction:column;align-items:flex-start}.cafe-subpage-header .btn-outline{width:100%;text-align:center}}.giftshop-page{max-width:1320px;margin:0 auto;padding:2rem}.giftshop-hero{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem;margin-bottom:2rem}.giftshop-hero-copy,.giftshop-info-card{border:1px solid var(--color-border);background:var(--color-white);padding:2rem}.giftshop-hero-copy{background:linear-gradient(135deg,#c5a02824,#faf9f8f5),radial-gradient(circle at top right,rgba(0,0,0,.06),transparent 35%)}.giftshop-kicker{margin-bottom:.5rem;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--color-gray-light)}.giftshop-hero-copy h1{margin-bottom:1rem;font-size:clamp(2.4rem,5vw,4.2rem)}.giftshop-hero-copy p{max-width:58ch}.giftshop-badges{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.giftshop-badges span{padding:.65rem .9rem;border:1px solid var(--color-border);background:#fffc;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em}.giftshop-info-card h2{margin-bottom:1rem;font-size:var(--font-size-xl)}.giftshop-info-card p+p{margin-top:.65rem}.giftshop-cart-link{margin-top:1.25rem;display:inline-block}.giftshop-filters-section{margin-bottom:2rem;padding:1.5rem;background:#fff;border:1px solid #e5e7eb}.giftshop-search-bar{margin-bottom:1.5rem}.giftshop-search-input{width:100%;padding:.75rem 1rem;border:1px solid #e5e7eb;font-size:.9rem}.giftshop-search-input:focus{outline:none;border-color:#c5a028}.giftshop-filters-grid{display:flex;flex-wrap:wrap;gap:1.25rem;align-items:flex-end}.filter-group{flex:1;min-width:160px}.filter-group label{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;margin-bottom:.25rem}.filter-group select,.filter-group input{width:100%;padding:.55rem .75rem;border:1px solid #e5e7eb;font-size:.85rem;background:#fff}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:#c5a028}.price-range{flex:1.35;min-width:260px}.price-range .price-inputs{display:flex;align-items:center;gap:.5rem}.price-range .price-inputs input{flex:1 1 0;min-width:0}.price-range .price-inputs span{color:#9ca3af;flex:0 0 auto}.stock-filter{display:flex;align-items:center;flex:0 0 auto;min-width:120px;margin-left:-50px}.checkbox-label{display:inline-flex;align-items:center;justify-content:flex-start;gap:0;cursor:pointer;font-size:.85rem;color:#4b5563;margin-bottom:0;min-height:42px;white-space:nowrap;width:max-content;transform:translate(-14px) translateY(16px);margin-left:10px}.checkbox-label input{width:16px;min-width:16px;max-width:16px;height:16px;flex:0 0 16px;accent-color:#c5a028;transform:none;margin-right:-2px}.checkbox-label span{margin-left:-60px}.checkbox-label input:focus,.checkbox-label input:focus-visible{outline:none!important;box-shadow:none!important;border-color:transparent}.checkbox-label:focus,.checkbox-label:focus-visible,.checkbox-label:focus-within{outline:none!important;box-shadow:none!important}.clear-filters-btn{padding:.55rem 1.25rem;background:transparent;border:1px solid #e5e7eb;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;cursor:pointer;transition:all .2s;align-self:flex-end;margin-left:auto;min-width:110px;transform:translateY(12px)}.clear-filters-btn:hover{border-color:#c5a028;color:#c5a028}.clear-filters-btn.is-hidden{visibility:hidden;pointer-events:none}.giftshop-results-count{font-size:.8rem;color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.giftshop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.75rem}.giftshop-card{display:grid;grid-template-rows:260px 1fr;border:1px solid var(--color-border);background:var(--color-white);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.giftshop-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.giftshop-card-art{display:flex;align-items:center;justify-content:center;overflow:hidden;padding:.15rem;background:var(--color-white);color:var(--color-gray);border-bottom:1px solid var(--color-border);font-size:4rem}.giftshop-card-image{width:100%;height:100%;object-fit:contain;display:block;transition:transform var(--transition-normal)}.giftshop-card:hover .giftshop-card-image{transform:scale(1.08)}.giftshop-card-body{display:grid;gap:.9rem;padding:1.5rem}.giftshop-card-body h3{font-size:1.2rem;font-weight:500;margin:0}.giftshop-category{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--color-gray-light)}.giftshop-price{color:var(--color-black);font-size:1.3rem}.giftshop-price-block{display:grid;gap:.2rem}.giftshop-price-original{font-size:.95rem;color:var(--color-gray-light);text-decoration:line-through;margin:0}.giftshop-member-discount{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#8b6914;margin:0}.giftshop-stock{font-size:var(--font-size-sm);color:var(--color-gray)}.giftshop-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.5rem}.giftshop-toast{position:fixed;bottom:2rem;right:2rem;padding:.75rem 1.25rem;background:#111827;color:#fff;font-size:.85rem;z-index:1000;animation:slideIn .3s ease}.giftshop-loading,.giftshop-empty{text-align:center;padding:4rem;background:#f9fafb;border:1px solid #e5e7eb;color:#6b7280}.giftshop-empty .reset-btn{margin-top:1rem;padding:.5rem 1.5rem;background:transparent;border:1px solid #c5a028;color:#c5a028;cursor:pointer}.giftshop-empty .reset-btn:hover{background:#c5a028;color:#000}.giftshop-message{padding:2rem;border:1px solid #e5e7eb;background:#fff;text-align:center}.giftshop-message.error{color:#dc2626}@media(max-width:900px){.giftshop-hero{grid-template-columns:1fr}}@media(max-width:768px){.giftshop-page{padding:1rem}.giftshop-hero-copy,.giftshop-info-card{padding:1.5rem}.giftshop-filters-grid{flex-direction:column}.filter-group,.clear-filters-btn{width:100%}}.shop-auth-modal{max-width:460px;width:90%;background:#fff;border:1px solid #e5e7eb}.shop-auth-modal .modal-header{padding:1.5rem 1.75rem;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.shop-auth-modal .modal-header h2{font-size:1.25rem;font-weight:400;color:#111827;margin:0}.shop-auth-modal .close-btn{background:none;border:none;font-size:1.5rem;color:#9ca3af;cursor:pointer;transition:color .2s;line-height:1}.shop-auth-modal .close-btn:hover{color:#111827}.shop-auth-body{padding:1.75rem}.shop-auth-body p{font-size:.9rem;color:#6b7280;line-height:1.6;margin-bottom:1.5rem;text-align:center}.shop-auth-actions{display:flex;gap:1rem;justify-content:center}.auth-btn{padding:.625rem 1.5rem;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;transition:all .2s ease;display:inline-block;text-align:center}.auth-btn-primary{background:#c5a028;color:#000;border:1px solid #c5a028}.auth-btn-primary:hover{background:#d4af37;transform:translateY(-1px)}.auth-btn-secondary{background:transparent;color:#6b7280;border:1px solid #e5e7eb}.auth-btn-secondary:hover{border-color:#c5a028;color:#c5a028}.giftshop-subpage-header{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.giftshop-subpage-header h1{font-size:1.75rem;font-weight:400;color:#111827;margin:0}.giftshop-subpage-header p{color:#6b7280;margin:.5rem 0 0}.giftshop-subpage-header .btn-outline{padding:.625rem 1.5rem;background:transparent;border:1px solid #e5e7eb;color:#6b7280;text-decoration:none;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;transition:all .2s ease}.giftshop-subpage-header .btn-outline:hover{border-color:#c5a028;color:#c5a028}.cart-page-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:1.5rem}.cart-page-items{display:grid;gap:1rem}.cart-page-card{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem;border:1px solid #e5e7eb;background:#fff;transition:all .2s ease}.cart-page-card:hover{border-color:#c5a028}.cart-page-card h2{font-size:1rem;font-weight:500;color:#111827;margin:0 0 .25rem}.cart-page-card .giftshop-category{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;margin:0 0 .25rem}.cart-page-card .giftshop-price{font-size:.9rem;font-weight:600;color:#c5a028;margin:0}.cart-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.cart-controls button{width:32px;height:32px;border:1px solid #e5e7eb;background:transparent;cursor:pointer;font-size:1rem;color:#4b5563;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.cart-controls button:hover{border-color:#c5a028;color:#c5a028}.cart-controls span{font-size:.9rem;font-weight:500;color:#111827;min-width:30px;text-align:center}.cart-controls .remove-link{background:transparent!important;border:1px solid #dc2626!important;color:#dc2626!important;width:auto!important;padding:0 12px!important;font-size:.7rem!important;text-transform:uppercase;letter-spacing:.05em}.cart-controls .remove-link:hover{background:#dc2626!important;color:#fff!important}.giftshop-cart{background:#fff;border:1px solid #e5e7eb;padding:1.5rem;align-self:start;position:sticky;top:2rem}.giftshop-cart h2{font-size:1.1rem;font-weight:500;color:#111827;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid #e5e7eb}.cart-total{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;margin-top:.5rem;border-top:1px solid #e5e7eb;font-size:1rem;font-weight:600;color:#111827}.summary-line{display:flex;justify-content:space-between;align-items:center;gap:1rem;font-size:.9rem;color:#4b5563;padding:.3rem 0}.giftshop-cart .btn-primary{width:100%;margin-top:1rem;padding:.75rem;background:#c5a028;color:#000;border:none;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease}.giftshop-cart .btn-primary:hover{background:#d4af37;transform:translateY(-1px)}.giftshop-message{text-align:center;padding:4rem;background:#f9fafb;border:1px solid #e5e7eb;color:#6b7280}@media(max-width:768px){.cart-page-layout{grid-template-columns:1fr}.cart-page-card{flex-direction:column;text-align:center}.cart-controls{justify-content:center}.giftshop-cart{position:static}.giftshop-subpage-header{flex-direction:column;align-items:flex-start}.giftshop-subpage-header .btn-outline{width:100%;text-align:center}}.artist-manager{width:100%}.artist-manager-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.artist-manager-header .add-btn{padding:.625rem 1.25rem;background:#c5a028;color:#000;border:none;cursor:pointer;font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;transition:all .2s ease;white-space:nowrap}.artist-manager-header .add-btn:hover{background:#d4af37;transform:translateY(-2px)}.artist-manager-header .search-bar{flex:1;min-width:200px;max-width:400px}.artist-manager-header .search-bar input{width:100%;padding:.625rem 1rem;border:1px solid #e5e5e5;font-size:.875rem;background:#fff}.artist-manager-header .search-bar input:focus{outline:none;border-color:#c5a028}.artist-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.artist-table{width:100%;min-width:600px;border-collapse:collapse;font-size:.875rem}.artist-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.artist-table th{text-align:left;padding:1rem;font-weight:600;color:#374151;white-space:nowrap}.artist-table td{padding:.875rem 1rem;border-bottom:1px solid #f3f4f6;color:#1f2937;white-space:nowrap}.artist-table tbody tr:hover{background:#f9fafb}.edit-btn,.delete-btn{padding:.375rem .75rem;border:none;border-radius:8px;cursor:pointer;font-size:.875rem;transition:all .2s ease}.modal-content{background:#fff;border:1px solid #e5e5e5;width:90%;max-width:800px;max-height:90vh;overflow-y:auto}.artist-form{padding:1.5rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid #e5e5e5;font-size:.875rem;width:100%;font-family:inherit;border-radius:0}.cancel-btn{padding:.75rem 1.5rem;background:transparent;border:1px solid #e5e5e5;cursor:pointer;transition:all .2s ease;font-size:.875rem}.submit-btn{padding:.75rem 1.5rem;background:#c5a028;color:#000;border:none;cursor:pointer;transition:all .2s ease;font-size:.875rem;text-transform:uppercase;letter-spacing:.03em}@media(max-width:768px){.artist-manager-header{flex-direction:column;align-items:stretch}.artist-manager-header .search-bar{max-width:100%;min-width:auto}.artist-manager-header .add-btn{width:100%;text-align:center}.form-row{grid-template-columns:1fr;gap:.75rem}.form-group.full-width{grid-column:span 1}.artist-form,.modal-header{padding:1rem}.form-actions{flex-direction:column-reverse}.cancel-btn,.submit-btn{width:100%;text-align:center}.artist-table th,.artist-table td{padding:.75rem .5rem}.actions{flex-direction:row;gap:.25rem}.edit-btn,.delete-btn{padding:.25rem .5rem;font-size:.75rem}}@media(max-width:480px){.modal-content{width:95%;max-height:95vh}.artist-table th,.artist-table td{font-size:.75rem;padding:.5rem .25rem}.artist-name{gap:.25rem}.artist-avatar{font-size:1rem}}.artwork-manager{width:100%}.artwork-manager-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.artwork-manager-header .search-bar{flex:1;min-width:200px;max-width:400px}.artwork-manager-header .search-bar input{width:100%;padding:.625rem 1rem;border:1px solid #e5e5e5;font-size:.875rem;background:#fff}.artwork-manager-header .search-bar input:focus{outline:none;border-color:#c5a028}.artwork-manager-header .add-btn{padding:.625rem 1.25rem;background:#c5a028;color:#000;border:none;cursor:pointer;font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;transition:all .2s ease;white-space:nowrap}.artwork-manager-header .add-btn:hover{background:#d4af37;transform:translateY(-2px)}.artwork-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}.artwork-table{min-width:800px;width:100%;border-collapse:collapse}@media(max-width:768px){.artwork-table{min-width:650px}}@media(max-width:480px){.artwork-table{min-width:550px}}.artwork-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.artwork-table th{text-align:left;padding:1rem;font-weight:600;color:#374151;white-space:nowrap}.artwork-table td{padding:.875rem 1rem;border-bottom:1px solid #f3f4f6;color:#1f2937}.artwork-table tbody tr:hover{background:#f9fafb}.title-cell{font-weight:500;color:#1f2937;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-cell{width:60px;text-align:center;padding:.5rem!important}.thumbnail-image{width:50px;height:50px;object-fit:cover;border-radius:4px;border:1px solid #e5e5e5}.thumbnail-placeholder{width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:#faf9f8;border:1px solid #e5e5e5;border-radius:4px;font-size:1.5rem;color:#888}.badge-deaccessioned{background:#4a4a4a;color:#fff}.actions{display:flex;gap:.5rem;flex-wrap:wrap;white-space:nowrap}.edit-btn,.delete-btn,.archive-btn,.deaccession-btn{padding:.375rem .75rem;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:.75rem}.deaccession-btn{background:#4a4a4a;color:#fff;border-radius:8px}.deaccession-btn:hover{background:#6b6b6b;transform:scale(1.05)}.modal-content{background:#fff;border:1px solid #e5e5e5;width:90%;max-width:900px;max-height:90vh;overflow-y:auto}.modal-header h2{margin:0;font-size:1.25rem;font-weight:400}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#888;transition:color .2s;padding:.25rem;line-height:1}.artwork-form{padding:2rem}.form-image-section{display:flex;gap:2rem;margin-bottom:2rem;padding:1.5rem;background:#f9fafb;border:1px solid #e5e7eb;flex-wrap:wrap}.image-preview{width:150px;height:150px;flex-shrink:0;background:#fff;border:1px solid #e5e7eb;overflow:hidden;display:flex;align-items:center;justify-content:center}.image-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:#9ca3af}.image-placeholder span{font-size:3rem}.image-placeholder p{font-size:.75rem;margin:0}.image-upload-controls{flex:1;display:flex;flex-direction:column;gap:1rem}.upload-btn{padding:.625rem 1rem;background:#fff;border:1px solid #d1d5db;font-size:.875rem;font-weight:500;color:#374151;cursor:pointer;transition:all .2s;width:fit-content}.upload-btn:hover:not(:disabled){border-color:#c5a028;color:#c5a028;background:#fff7ed}.upload-btn:disabled{opacity:.6;cursor:not-allowed}.upload-hint{font-size:.7rem;color:#9ca3af;margin:0}.image-url-input{width:100%;padding:.625rem .875rem;border:1px solid #d1d5db;font-size:.875rem;font-family:inherit;color:#1f2937;background:#fff;transition:all .2s}.image-url-input:focus{outline:none;border-color:#c5a028}.image-url-input::placeholder{color:#9ca3af}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.form-group label{font-size:.875rem;font-weight:600;color:#374151}.form-group input,.form-group select,.form-group textarea{padding:.625rem .875rem;border:1px solid #d1d5db;font-size:.875rem;transition:all .2s;font-family:inherit;background:#fff;color:#1f2937}.form-group input::placeholder,.form-group textarea::placeholder{color:#9ca3af}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#ef4444}.error-message{font-size:.75rem;color:#ef4444;margin-top:.25rem}.submit-error{margin-top:1rem;text-align:center;padding:.75rem;background:#fef2f2;color:#dc2626}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.cancel-btn{padding:.625rem 1.25rem;background:#fff;border:1px solid #d1d5db;font-size:.875rem;font-weight:500;color:#374151;cursor:pointer;transition:all .2s}.submit-btn{padding:.625rem 1.5rem;background:#c5a028;border:none;font-size:.875rem;font-weight:500;color:#000;cursor:pointer;transition:all .2s}.submit-btn:hover:not(:disabled){background:#d4af37;transform:translateY(-1px)}@media(max-width:768px){.artwork-manager-header{flex-direction:column;align-items:stretch}.artwork-manager-header .search-bar{max-width:100%;min-width:auto}.artwork-manager-header .add-btn{width:100%;text-align:center}.form-image-section{flex-direction:column;align-items:center;text-align:center}.image-upload-controls,.upload-btn{width:100%}.form-row{grid-template-columns:1fr}.full-width{grid-column:span 1}.artwork-form{padding:1rem}.form-actions{flex-direction:column-reverse}.cancel-btn,.submit-btn{width:100%}.actions{flex-direction:row;flex-wrap:wrap;justify-content:flex-start}.edit-btn,.delete-btn,.archive-btn,.deaccession-btn{flex:1;min-width:60px;text-align:center}}@media(max-width:480px){.modal-content{width:95%;max-height:95vh}.modal-header{padding:1rem}.modal-header h2{font-size:1rem}.image-preview{width:100px;height:100px}.image-placeholder span{font-size:2rem}.artwork-table th,.artwork-table td{padding:.5rem;font-size:.75rem}.title-cell{max-width:120px}.status-badge{font-size:.65rem;padding:.15rem .5rem}.actions{flex-direction:column}.edit-btn,.delete-btn,.archive-btn,.deaccession-btn{width:100%}}@media(max-width:380px){.artwork-table{min-width:480px}.title-cell{max-width:80px}}@media(max-width:480px){.modal-content{width:95%;max-height:95vh}.artist-table th,.artwork-table th,.provenance-table th,.artist-table td,.artwork-table td,.provenance-table td{font-size:.75rem;padding:.5rem .25rem}.status-badge,.method-badge,.archived-badge{font-size:.6rem;padding:.15rem .35rem}.image-preview{width:80px;height:80px}.content-area{min-height:300px}.empty-state,.loading-spinner{padding:2rem}}.exhibitions-admin-toolbar{padding:0 0 12px;display:flex;justify-content:flex-end}.btn-view-archived{background:#1a1a1a;color:#c9a84c;border:1.5px solid #c9a84c;padding:9px 20px;border-radius:8px;font-size:.88rem;font-weight:600;cursor:pointer;letter-spacing:.03em;transition:background .2s,color .2s}.btn-view-archived:hover{background:#c9a84c;color:#1a1a1a}.archived-exhibitions-panel{background:#fafafa;border:1.5px solid #e0d9cc;border-radius:10px;padding:20px 24px;margin-bottom:24px}.archived-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.archived-panel-title{font-size:1rem;font-weight:700;color:#333;margin:0}.archived-panel-count{font-size:.82rem;color:#888;background:#ece8e0;padding:3px 10px;border-radius:12px}.archived-state-msg{color:#888;font-size:.9rem;padding:8px 0}.archived-error{color:#c0392b}.archived-table-wrap{overflow-x:auto}.archived-table{width:100%;border-collapse:collapse;font-size:.875rem}.archived-table thead tr{background:#ece8e0}.archived-table th{text-align:left;padding:9px 12px;font-weight:600;color:#555;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.archived-table td{padding:10px 12px;border-bottom:1px solid #ece8e0;color:#444;vertical-align:middle}.archived-table tbody tr:last-child td{border-bottom:none}.archived-table tbody tr:hover{background:#f5f0e8}.archived-title{font-weight:500;color:#222}.btn-restore{background:#1a1a1a;color:#c9a84c;border:1px solid #c9a84c;padding:5px 14px;border-radius:16px;font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s,color .2s}.btn-restore:hover{background:#c9a84c;color:#1a1a1a}.archive-btn{background:none;border:none;cursor:pointer;font-size:1rem;padding:4px 6px;border-radius:4px;transition:background .15s;opacity:.7}.archive-btn:hover{background:#fff3cd;opacity:1}.provenance-manager{width:100%}.provenance-manager-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.provenance-manager-header .search-bar{flex:1;min-width:200px;max-width:400px}.provenance-manager-header .search-bar input{width:100%;padding:.625rem 1rem;border:1px solid #e5e5e5;font-size:.875rem;background:#fff}.provenance-manager-header .search-bar input:focus{outline:none;border-color:#c5a028}.provenance-manager-header .add-btn{padding:.625rem 1.25rem;background:#c5a028;color:#000;border:none;cursor:pointer;font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;transition:all .2s ease;white-space:nowrap}.provenance-manager-header .add-btn:hover{background:#d4af37;transform:translateY(-2px)}.provenance-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch;background:#fff}.provenance-table{min-width:700px;width:100%;border-collapse:collapse;font-size:.875rem}@media(max-width:768px){.provenance-table{min-width:600px}}@media(max-width:480px){.provenance-table{min-width:500px}}.provenance-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.provenance-table th{text-align:left;padding:1rem;font-weight:600;color:#374151;white-space:nowrap}.provenance-table td{padding:.875rem 1rem;border-bottom:1px solid #f3f4f6;color:#1f2937}.provenance-table tbody tr:hover{background:#f9fafb}.artwork-cell{font-weight:500;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.method-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500;white-space:nowrap}.method-bequest{background:#fce7f3;color:#9d174d}.method-exchange{background:#e0f2fe;color:#075985}.method-transfer{background:#e5e7eb;color:#374151}.edit-btn,.delete-btn{padding:.375rem .75rem;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.provenance-form{padding:1.5rem}@media(max-width:768px){.provenance-manager-header{flex-direction:column;align-items:stretch}.provenance-manager-header .search-bar{max-width:100%;min-width:auto}.provenance-manager-header .add-btn{width:100%;text-align:center}.form-row{grid-template-columns:1fr}.full-width{grid-column:span 1}.provenance-form,.modal-header{padding:1rem}.modal-header h2{font-size:1rem}.form-actions{flex-direction:column-reverse}.cancel-btn,.submit-btn{width:100%}.actions{flex-direction:row;gap:.25rem}.edit-btn,.delete-btn{flex:1;text-align:center}}@media(max-width:480px){.modal-content{width:95%;max-height:95vh}.provenance-table th,.provenance-table td{padding:.5rem;font-size:.75rem}.artwork-cell{max-width:120px}.method-badge{font-size:.65rem;padding:.15rem .5rem}.actions{flex-direction:column}.edit-btn,.delete-btn{width:100%}.toast{bottom:1rem;right:1rem;left:1rem;text-align:center}}.status-toggles{display:flex;gap:.5rem;margin:0 1rem}.status-btn{padding:.5rem 1rem;border:1px solid #e5e5e5;background:#fff;cursor:pointer;border-radius:4px;transition:all .2s}.status-btn.active{background:#c5a028;border-color:#c5a028;color:#000}.filter-bar{display:flex;gap:1rem;margin:1rem 0;flex-wrap:wrap;align-items:center}.filter-bar select,.filter-bar input{padding:.5rem;border:1px solid #e5e5e5;border-radius:4px;background:#fff}.year-range,.price-range{display:flex;align-items:center;gap:.5rem}.year-range input,.price-range input{width:100px}.clear-filters{padding:.5rem 1rem;background:#f3f4f6;border:1px solid #e5e5e5;border-radius:4px;cursor:pointer;font-size:.75rem}.clear-filters:hover{background:#e5e5e5}.archive-btn{padding:.375rem .75rem;background:#f59e0b;color:#fff;border:none;border-radius:4px;cursor:pointer}.archive-btn:hover{background:#d97706}.restore-btn{padding:.375rem .75rem;background:#10b981;color:#fff;border:none;border-radius:4px;cursor:pointer}.restore-btn:hover{background:#059669}@media(max-width:768px){.filter-bar{flex-direction:column;align-items:stretch}.year-range,.price-range{flex-wrap:wrap}.year-range input,.price-range input{width:100%}.status-toggles{margin:0 0 1rem}}.artist-manager,.artwork-manager,.provenance-manager{width:100%}.artist-manager-header,.artwork-manager-header,.provenance-manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.add-btn{padding:.625rem 1.25rem;background:#c5a028;color:#000;border:none;cursor:pointer;font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;transition:all .2s ease;white-space:nowrap;border-radius:4px}.add-btn:hover{background:#d4af37;transform:translateY(-2px)}.add-btn:active{transform:translateY(0)}.search-bar{flex:1;min-width:200px;max-width:400px}.search-bar input{width:100%;padding:.625rem 1rem;border:1px solid #e5e5e5;font-size:.875rem;background:#fff;border-radius:4px;transition:all .2s ease}.search-bar input:focus{outline:none;border-color:#c5a028;box-shadow:0 0 0 2px #c5a0281a}.search-bar input::placeholder{color:#9ca3af}.content-area{background:#fff;border:1px solid #e5e5e5;border-radius:8px;min-height:400px;overflow-x:auto}.error-message{text-align:center;padding:2rem;color:#dc2626;background:#fef2f2;border-radius:8px}.empty-state{text-align:center;padding:3rem;color:#6b7280;font-size:.875rem}.artist-table-container,.artwork-table-container,.provenance-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.artist-table,.artwork-table,.provenance-table{width:100%;min-width:600px;border-collapse:collapse;font-size:.875rem}.artist-table thead,.artwork-table thead,.provenance-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.artist-table th,.artwork-table th,.provenance-table th{text-align:left;padding:1rem;font-weight:600;color:#374151;white-space:nowrap}.artist-table td,.artwork-table td,.provenance-table td{padding:.875rem 1rem;border-bottom:1px solid #f3f4f6;color:#1f2937;white-space:nowrap}.artist-table tbody tr:hover,.artwork-table tbody tr:hover,.provenance-table tbody tr:hover{background:#f9fafb}.value-cell,.amount-cell{font-weight:600;color:#1a1a2e}.image-cell{width:50px;text-align:center}.thumbnail-image{width:40px;height:40px;object-fit:cover;border-radius:4px}.thumbnail-placeholder{width:40px;height:40px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;font-size:1.25rem;border-radius:4px}.artist-name{display:flex;align-items:center;gap:.75rem}.artist-avatar{font-size:1.5rem}.edit-btn,.delete-btn,.archive-btn,.restore-btn{padding:.375rem .75rem;border:none;border-radius:6px;cursor:pointer;font-size:.75rem;font-weight:500;transition:all .2s ease}.edit-btn:hover{background:#e5e7eb;transform:scale(1.02)}.delete-btn:hover{background:#fecaca;transform:scale(1.02)}.archive-btn{background:#fef3c7;color:#d97706}.archive-btn:hover{background:#fde68a;transform:scale(1.02)}.restore-btn{background:#d1fae5;color:#059669}.restore-btn:hover{background:#a7f3d0;transform:scale(1.02)}.status-badge,.method-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.archived-row{opacity:.6;background-color:#f9fafb}.archived-row:hover{opacity:.8}.archived-badge{display:inline-block;padding:.2rem .5rem;background:#9ca3af;color:#fff;font-size:.7rem;border-radius:4px;font-weight:600}.status-cell{min-width:80px}.modal-content{background:#fff;border:1px solid #e5e5e5;border-radius:8px;width:90%;max-width:800px;max-height:90vh;overflow-y:auto}.modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#1a1a2e}.artist-form,.artwork-form,.provenance-form{padding:1.5rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-group{display:flex;flex-direction:column;gap:.25rem}.form-group.full-width{grid-column:span 2}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-group label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#555}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid #e5e5e5;border-radius:4px;font-size:.875rem;width:100%;font-family:inherit;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#c5a028;box-shadow:0 0 0 2px #c5a0281a}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#dc2626}.error-message{font-size:.75rem;color:#dc2626;margin-top:.25rem}.char-counter{font-size:.7rem;color:#888;text-align:right;margin-top:.25rem}.submit-error{margin-top:1rem;text-align:center;padding:.75rem;background:#fef2f2;color:#dc2626;border-radius:4px}.cancel-btn{padding:.75rem 1.5rem;background:transparent;border:1px solid #e5e5e5;border-radius:4px;cursor:pointer;transition:all .2s ease;font-size:.875rem}.cancel-btn:hover{border-color:#c5a028;color:#c5a028}.submit-btn{padding:.75rem 1.5rem;background:#c5a028;color:#000;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.submit-btn:hover:not(:disabled){background:#d4af37;transform:translateY(-2px)}.form-image-section{display:flex;gap:1.5rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e5e5}.image-preview{width:120px;height:120px;background:#f9fafb;border:1px solid #e5e5e5;border-radius:8px;display:flex;align-items:center;justify-content:center;overflow:hidden}.image-preview img{width:100%;height:100%;object-fit:cover}.image-placeholder{text-align:center;color:#9ca3af}.image-placeholder span{font-size:2rem;display:block}.image-placeholder p{font-size:.75rem;margin-top:.5rem}.image-upload-controls{flex:1}.upload-btn{padding:.5rem 1rem;background:#f3f4f6;border:1px solid #e5e5e5;border-radius:4px;cursor:pointer;font-size:.875rem;transition:all .2s ease}.upload-btn:hover{background:#e5e7eb}.upload-hint{font-size:.7rem;color:#9ca3af;margin:.5rem 0 .25rem}.image-url-input{width:100%;padding:.5rem;border:1px solid #e5e5e5;border-radius:4px;font-size:.875rem}.toast{position:fixed;top:20px;right:20px;padding:1rem 1.5rem;border-radius:8px;color:#000;z-index:1100;animation:slideIn .3s ease}.toast.success{background:#c5a028}@media(max-width:768px){.artist-manager-header,.artwork-manager-header,.provenance-manager-header{flex-direction:column;align-items:stretch}.search-bar{max-width:100%;min-width:auto}.add-btn{width:100%;text-align:center}.form-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:span 1}.form-row{grid-template-columns:1fr;gap:.75rem}.form-image-section{flex-direction:column;align-items:center}.image-preview{width:100px;height:100px}.artist-form,.artwork-form,.provenance-form,.modal-header{padding:1rem}.form-actions{flex-direction:column-reverse}.cancel-btn,.submit-btn{width:100%;text-align:center}.artist-table th,.artwork-table th,.provenance-table th,.artist-table td,.artwork-table td,.provenance-table td{padding:.75rem .5rem}.actions{flex-direction:row;gap:.25rem}.edit-btn,.delete-btn,.archive-btn,.restore-btn{padding:.25rem .5rem;font-size:.7rem}.thumbnail-image,.thumbnail-placeholder{width:32px;height:32px}.artist-name{gap:.5rem}.artist-avatar{font-size:1.25rem}}@media(max-width:480px){.modal-content{width:95%;max-height:95vh}.artist-table th,.artwork-table th,.provenance-table th,.artist-table td,.artwork-table td,.provenance-table td{font-size:.75rem;padding:.5rem .25rem}.status-badge,.method-badge,.archived-badge{font-size:.6rem;padding:.15rem .35rem}.image-preview{width:80px;height:80px}.toast{left:20px;right:20px;text-align:center}.content-area{min-height:300px}.empty-state,.loading-spinner{padding:2rem}}@media(max-width:380px){.artist-table th,.artwork-table th,.provenance-table th,.artist-table td,.artwork-table td,.provenance-table td{font-size:.7rem;padding:.375rem .2rem}.edit-btn,.delete-btn,.archive-btn,.restore-btn{padding:.2rem .35rem;font-size:.65rem}.thumbnail-image,.thumbnail-placeholder{width:28px;height:28px;font-size:.875rem}}.method-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.method-purchase{background:#d1fae5;color:#065f46}.method-donation{background:#fef3c7;color:#92400e}.method-inheritance{background:#e0e7ff;color:#3730a3}.method-bequest{background:#f3e8ff;color:#6b21a8}.method-exchange{background:#fed7aa;color:#9a3412}.exhibition-manager{width:100%}.exhibition-manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.exhibition-manager-header .search-bar{flex:1;min-width:200px;max-width:400px}.exhibition-manager-header .search-bar input{width:100%;padding:.625rem 1rem;border:1px solid #e5e5e5;font-size:.875rem;background:#fff}.exhibition-manager-header .search-bar input:focus{outline:none;border-color:#c5a028}.exhibition-manager-header .add-btn{padding:.625rem 1.25rem;background:#c5a028;color:#000;border:none;cursor:pointer;font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;transition:all .2s ease;white-space:nowrap}.exhibition-manager-header .add-btn:hover{background:#d4af37;transform:translateY(-2px)}.content-area{background:#fff;border:1px solid #e5e5e5;min-height:400px;overflow-x:auto}.exhibition-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch;background:#fff;width:100%;min-width:0}.exhibition-table{min-width:700px;width:100%;border-collapse:collapse;font-size:.875rem}@media(max-width:768px){.exhibition-table{min-width:600px}}@media(max-width:480px){.exhibition-table{min-width:500px}}.exhibition-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.exhibition-table th{text-align:left;padding:1rem;font-weight:600;color:#374151;white-space:nowrap}.exhibition-table td{padding:.875rem 1rem;border-bottom:1px solid #f3f4f6;color:#1f2937;vertical-align:middle}.exhibition-table tbody tr:hover{background:#f9fafb}.title-cell{font-weight:500;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500;white-space:nowrap}.badge-permanent{background:#d1fae5;color:#065f46}.badge-temporary{background:#fef3c7;color:#92400e}.badge-traveling{background:#e0e7ff;color:#3730a3}.date-status{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500;white-space:nowrap}.date-active{background:#d1fae5;color:#065f46}.date-upcoming{background:#fef3c7;color:#92400e}.date-ended{background:#fee2e2;color:#991b1b}.actions{display:flex;gap:.5rem;white-space:nowrap}.modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e5e5;position:sticky;top:0;background:#fff;z-index:10}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#888;transition:color .2s ease;padding:.25rem;line-height:1}.exhibition-form{padding:1.5rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid #e5e5e5;font-size:.875rem;font-family:inherit;width:100%;background:#fff;color:#1f2937;border-radius:0}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px;flex-wrap:wrap;gap:.5rem}.section-header label{margin-bottom:0}.add-row-btn{background:#ede9fe;color:#4f46e5;border:1px solid #c4b5fd;border-radius:6px;padding:4px 12px;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s}.add-row-btn:hover{background:#ddd6fe}.field-hint{font-size:.78rem;color:#888;margin:2px 0 10px}.empty-hint{font-size:.85rem;color:#aaa;font-style:italic;padding:8px 0}.artwork-rows{display:flex;flex-direction:column;gap:10px}.artwork-row{display:flex;align-items:flex-start;gap:10px;background:#f8f7ff;border:1px solid #e0d9f7;border-radius:8px;padding:12px 14px;flex-wrap:wrap}.artwork-row-fields{display:flex;flex:1;gap:12px;flex-wrap:wrap}.artwork-row-fields .form-group{flex:1;min-width:140px;margin-bottom:0}.artwork-select-group{flex:2!important;min-width:200px!important}.remove-row-btn{background:none;border:none;color:#aaa;font-size:1rem;cursor:pointer;padding:4px 6px;border-radius:4px;transition:color .15s,background .15s;flex-shrink:0;align-self:center}.remove-row-btn:hover{color:#ef4444;background:#fee2e2}.error-message{display:inline-block;background-color:#fee2e2;border:1px solid #ef4444;color:#b91c1c;padding:4px 8px;border-radius:4px;font-size:12px;margin-top:4px}@media(max-width:768px){.exhibition-manager-header{flex-direction:column;align-items:stretch}.exhibition-manager-header .search-bar{max-width:100%;min-width:auto}.exhibition-manager-header .add-btn{width:100%;text-align:center}.form-row{grid-template-columns:1fr}.full-width{grid-column:span 1}.exhibition-form,.modal-header{padding:1rem}.modal-header h2{font-size:1rem}.form-actions{flex-direction:column-reverse}.cancel-btn,.submit-btn{width:100%}.actions{flex-direction:row;flex-wrap:wrap;gap:.25rem}.edit-btn,.delete-btn,.archive-btn{flex:1;text-align:center}.artwork-row{flex-direction:column}.artwork-row-fields{width:100%}.remove-row-btn{align-self:flex-end;margin-top:.5rem}.section-header{flex-direction:column;align-items:flex-start}}@media(max-width:480px){.modal-content{width:95%;max-height:95vh}.exhibition-table th,.exhibition-table td{padding:.5rem;font-size:.75rem}.title-cell{max-width:120px}.status-badge,.date-status{font-size:.65rem;padding:.15rem .5rem}.actions{flex-direction:column}.edit-btn,.delete-btn,.archive-btn{width:100%}.toast{bottom:1rem;right:1rem;left:1rem;text-align:center}.artwork-row-fields .form-group{min-width:100%}.artwork-select-group{min-width:100%!important}}.gallery-manager{width:100%}.gallery-manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.gallery-manager-header .search-bar{flex:1;max-width:400px}.gallery-manager-header .search-bar input{width:100%;padding:.625rem 1rem;border:1px solid #e5e5e5;font-size:.875rem;background:#fff}.gallery-manager-header .search-bar input:focus{outline:none;border-color:#c5a028}.gallery-manager-header .add-btn{padding:.625rem 1.25rem;background:#c5a028;color:#000;border:none;cursor:pointer;font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;transition:all .2s ease}.gallery-manager-header .add-btn:hover{background:#d4af37;transform:translateY(-2px)}.gallery-table-container{overflow-x:auto;background:#fff}.gallery-table{width:100%;border-collapse:collapse;font-size:.875rem}.gallery-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.gallery-table th{text-align:left;padding:1rem;font-weight:600;color:#374151}.gallery-table td{padding:.875rem 1rem;border-bottom:1px solid #f3f4f6;color:#1f2937;vertical-align:middle}.gallery-table tbody tr:hover{background:#f9fafb}.title-cell{font-weight:500;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500}.badge-standard{background:#d1fae5;color:#065f46}.badge-none{background:#e5e7eb;color:#374151}.actions{display:flex;gap:.5rem}.edit-btn,.delete-btn,.archive-btn{padding:.375rem .75rem;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.archive-btn{background:#ffeeb5;color:#816c31}.archive-btn:hover{background:#fff5d6;transform:scale(1.05)}.modal-content{background:#fff;border:1px solid #e5e5e5;width:90%;max-width:640px;max-height:90vh;overflow-y:auto}.gallery-form{padding:1.5rem}.field-hint{font-size:.7rem;color:#888;margin-top:-.25rem}.empty-hint{font-size:.8rem;color:#aaa;font-style:italic;padding:.5rem 0}.checkbox-list{display:flex;flex-direction:column;gap:.5rem;max-height:200px;overflow-y:auto;border:1px solid #e5e5e5;padding:.75rem;background:#fafafa}.checkbox-item{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer}.checkbox-item input[type=checkbox]{width:16px;height:16px;margin-top:2px;accent-color:#c5a028}.checkbox-label{display:flex;flex-direction:column;gap:2px}.exhibition-name{font-size:.875rem;font-weight:500;color:#222}.exhibition-dates{font-size:.7rem;color:#888}.checkbox-item:hover .exhibition-name{color:#c5a028}@media(max-width:768px){.gallery-manager-header{flex-direction:column;align-items:stretch}.gallery-manager-header .search-bar{max-width:100%}.gallery-manager-header .add-btn{width:100%;text-align:center}.form-row{grid-template-columns:1fr}.full-width{grid-column:span 1}.modal-content{width:95%}.gallery-form,.modal-header{padding:1rem}.form-actions{flex-direction:column-reverse}.cancel-btn,.submit-btn{width:100%}.actions{flex-direction:column;gap:.25rem}}.event-manager{width:100%}.event-manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.event-manager-header .search-bar{flex:1;max-width:400px}.event-manager-header .search-bar input{width:100%;padding:.625rem 1rem;border:1px solid #e5e5e5;font-size:.875rem;background:#fff}.event-manager-header .search-bar input:focus{outline:none;border-color:#c5a028}.event-manager-header .add-btn{padding:.625rem 1.25rem;background:#c5a028;color:#000;border:none;cursor:pointer;font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;transition:all .2s ease}.event-manager-header .add-btn:hover{background:#d4af37;transform:translateY(-2px)}.content-area{background:#fff;border:1px solid #e5e5e5;min-height:400px}.loading-spinner{text-align:center;padding:3rem;color:#888;font-size:.875rem}.error-message{text-align:center;padding:2rem;color:#dc2626;background:#fef2f2}.event-table-container{overflow-x:auto;background:#fff;width:100%}.event-table{width:100%;border-collapse:collapse;font-size:.875rem}.event-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.event-table th{text-align:left;padding:1rem;font-weight:600;color:#374151;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.event-table td{padding:.875rem 1rem;border-bottom:1px solid #f3f4f6;color:#1f2937;vertical-align:middle}.event-table tbody tr:hover{background:#f9fafb}.event-table .actions{display:flex;gap:.5rem}.event-table .edit-btn,.event-table .archive-btn,.event-table .delete-btn{padding:.375rem .75rem;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.event-table .edit-btn{background:#f3f4f6;color:#374151}.event-table .edit-btn:hover{background:#e5e7eb;transform:scale(1.05)}.event-table .archive-btn{background:#ffeeb5;color:#816c31}.event-table .archive-btn:hover{background:#fff5d6;transform:scale(1.05)}.event-table .delete-btn{background:#fee2e2;color:#ef4444}.event-table .delete-btn:hover{background:#fecaca;transform:scale(1.05)}.empty-state{text-align:center;padding:3rem;color:#6b7280}.toast{position:fixed;bottom:2rem;right:2rem;padding:1rem 1.5rem;background:#c5a028;color:#000;font-size:.875rem;font-weight:500;z-index:1100;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media(max-width:768px){.event-manager-header{flex-direction:column;align-items:stretch}.event-manager-header .search-bar{max-width:100%}.event-manager-header .add-btn{width:100%;text-align:center}.event-table .actions{flex-direction:column;gap:.25rem}.event-table .edit-btn,.event-table .archive-btn,.event-table .delete-btn{width:100%}}.modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border:1px solid #e5e5e5;width:90%;max-width:700px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e5e5}.modal-header h2{margin:0;font-size:1.25rem;font-weight:400;color:#000}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#888;transition:color .2s ease}.close-btn:hover{color:#c5a028}.event-form{padding:1.5rem}.form-grid{display:flex;flex-direction:column;gap:1.25rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.full-width{grid-column:span 2}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:#555}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid #e5e5e5;font-size:.875rem;font-family:inherit;width:100%;background:#fff;color:#1f2937}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#c5a028}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e5e5}.cancel-btn{padding:.625rem 1.25rem;background:#fff;border:1px solid #e5e5e5;font-size:.875rem;font-weight:500;color:#374151;cursor:pointer;transition:all .2s ease}.cancel-btn:hover{background:#f3f4f6;border-color:#9ca3af}.submit-btn{padding:.625rem 1.5rem;background:#c5a028;border:none;font-size:.875rem;font-weight:500;color:#000;cursor:pointer;transition:all .2s ease}.submit-btn:hover{background:#d4af37;transform:translateY(-1px)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.operations-management{padding:var(--spacing-xl);min-width:0}.operations-header{margin-bottom:var(--spacing-xl)}.resource-tabs{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.resource-tab{padding:var(--spacing-sm) var(--spacing-lg);border:var(--border-width) solid var(--color-border);background:var(--color-white);color:var(--color-gray);cursor:pointer;transition:all var(--transition-fast)}.resource-tab.active,.resource-tab:hover{border-color:var(--color-gold);background:var(--color-gold);color:var(--color-black)}.operations-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--spacing-md);align-items:center;margin-bottom:var(--spacing-lg);width:100%}.operations-toolbar input{width:100%;max-width:none;min-width:0;padding:var(--spacing-md);border:var(--border-width) solid var(--color-border)}.operations-toolbar .add-btn{white-space:nowrap}.dashboard-error{margin:0 var(--spacing-xl) var(--spacing-lg)}.operations-table-container{overflow-x:auto}.operations-table{width:100%;border-collapse:collapse}.operations-table th,.operations-table td{padding:var(--spacing-md);border-bottom:var(--border-width) solid var(--color-border);text-align:left;font-size:var(--font-size-sm)}.operations-table th{font-weight:600;color:var(--color-gray)}.operations-table .actions{white-space:nowrap}.edit-btn,.delete-btn{padding:.375rem .75rem;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;margin-right:.5rem;font-size:var(--font-size-sm)}.edit-btn:last-child,.delete-btn:last-child{margin-right:0}.edit-btn{background:#f3f4f6;color:#374151}.edit-btn:hover{background:#e5e7eb;transform:scale(1.05)}.delete-btn{background:#fee2e2;color:#ef4444}.delete-btn:hover{background:#fecaca;transform:scale(1.05)}.operations-modal{max-width:780px}.operations-form{padding:var(--spacing-lg)}.operations-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-md)}.operations-form-grid .full-width{grid-column:1 / -1}.operations-form-grid input,.operations-form-grid select{width:100%;padding:var(--spacing-md);border:var(--border-width) solid var(--color-border)}.filter-bar{background-color:#f8f9fa;padding:var(--spacing-md) var(--spacing-lg);border-radius:8px;margin-bottom:var(--spacing-lg);display:flex;flex-wrap:wrap;gap:var(--spacing-md);align-items:flex-end;border:var(--border-width) solid var(--color-border)}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.filter-group label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-gray)}.filter-group select,.filter-group input{padding:var(--spacing-sm) var(--spacing-md);border:var(--border-width) solid var(--color-border);border-radius:6px;font-size:var(--font-size-sm);background-color:var(--color-white);min-width:150px}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:var(--color-gold);box-shadow:0 0 0 2px #c5a0281a}.range-filter,.date-range-filter{display:flex;gap:var(--spacing-xs);align-items:center}.range-filter input,.date-range-filter input{width:100px;min-width:auto}.range-filter span,.date-range-filter span{color:var(--color-gray);font-size:var(--font-size-sm)}.clear-filters-btn{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-gray);color:var(--color-white);border:none;border-radius:6px;cursor:pointer;font-size:var(--font-size-sm);transition:all var(--transition-fast);height:38px;align-self:center}.clear-filters-btn:hover{background-color:#5a6268;transform:scale(1.02)}.expandable-row{cursor:pointer;transition:background-color var(--transition-fast)}.expandable-row:hover{background-color:#f8f9fa}.expand-cell{text-align:center;vertical-align:middle;padding:var(--spacing-md) var(--spacing-sm)!important;width:40px}.expand-btn{background:none;border:none;font-size:14px;cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);border-radius:4px;transition:all var(--transition-fast);color:var(--color-gray)}.expand-btn:hover{background-color:#e9ecef;transform:scale(1.1);color:var(--color-gold)}.expanded-details-row{background-color:#f8f9fa}.expanded-content{padding:var(--spacing-lg);background-color:var(--color-white);border-top:var(--border-width) solid var(--color-border);border-bottom:var(--border-width) solid var(--color-border)}.expanded-content h4{margin:0 0 var(--spacing-md) 0;color:var(--color-gray);font-size:var(--font-size-base);font-weight:600}.transaction-items-table-container{overflow-x:auto}.transaction-items-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.transaction-items-table th{background-color:#f8f9fa;padding:var(--spacing-sm) var(--spacing-md);text-align:left;font-weight:600;color:var(--color-gray);border-bottom:2px solid var(--color-border)}.transaction-items-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:var(--border-width) solid var(--color-border)}.transaction-items-table tr:last-child td{border-bottom:none}.items-total-row{background-color:#f8f9fa;font-weight:600}.items-total-label{text-align:right;font-weight:600}.items-total-amount{font-weight:700;color:#2b8c4e;font-size:var(--font-size-base)}.expanded-loading,.expanded-empty{padding:var(--spacing-lg);text-align:center;color:var(--color-gray)}.operations-table tr.low-stock-row{background-color:#fef2e8!important;border-left:3px solid var(--color-gold);position:relative}.operations-table tr.low-stock-row:hover{background-color:#fde5d4!important}.low-stock-badge{display:inline-block;margin-left:var(--spacing-sm);padding:2px 6px;background:var(--color-gold);color:var(--color-black);font-size:10px;font-weight:600;border-radius:4px;text-transform:uppercase;letter-spacing:.05em}@keyframes gentlePulse{0%,to{opacity:1}50%{opacity:.7}}.operations-table tr.low-stock-row .low-stock-badge{animation:gentlePulse 1.5s ease-in-out infinite}@media(max-width:768px){.operations-management{padding:var(--spacing-md)}.operations-toolbar{grid-template-columns:1fr}.operations-toolbar .add-btn{width:100%}.operations-form-grid{grid-template-columns:1fr}.filter-bar{flex-direction:column;align-items:stretch}.filter-group{width:100%}.filter-group select,.filter-group input{width:100%;min-width:auto}.range-filter,.date-range-filter{flex-wrap:wrap}.range-filter input,.date-range-filter input{flex:1;min-width:80px}.clear-filters-btn{width:100%}.expand-cell{width:30px;padding:var(--spacing-sm) var(--spacing-xs)!important}.expanded-content{padding:var(--spacing-md)}.transaction-items-table th,.transaction-items-table td{padding:var(--spacing-xs) var(--spacing-sm)}.operations-table th,.operations-table td{padding:var(--spacing-sm)}.edit-btn,.delete-btn{padding:.25rem .5rem;margin-right:.25rem}}@media(max-width:480px){.range-filter input,.date-range-filter input{width:100%}.operations-table{font-size:12px}.operations-table th,.operations-table td{padding:var(--spacing-xs)}.low-stock-badge{font-size:8px;margin-left:4px}}.image-field-group{display:flex;gap:.5rem;align-items:center}.image-preview-small{width:40px;height:40px;border:1px solid #e5e5e5;border-radius:4px;overflow:hidden;flex-shrink:0}.image-preview-small img{width:100%;height:100%;object-fit:cover}.table-thumbnail{width:40px!important;height:40px!important;object-fit:cover;border-radius:4px;border:1px solid #e5e5e5;background:#f9fafb;display:block}.thumbnail-placeholder{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#f9fafb;border:1px solid #e5e5e5;border-radius:4px;font-size:1.25rem}.operations-table td:has(.table-thumbnail){width:60px;text-align:center;vertical-align:middle}.um-wrap{padding:0}.um-subtabs{display:flex;gap:0;border-bottom:2px solid #e5e7eb;margin-bottom:1.5rem}.um-subtab{display:flex;align-items:center;gap:6px;padding:.75rem 1.25rem;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;font-size:.875rem;color:#6b7280;font-weight:500;transition:all .15s}.um-subtab:hover{color:#1f2937;background:#f9fafb}.um-subtab.active{color:#1f2937;border-bottom-color:#c9a84c;font-weight:600}.um-toolbar{display:flex;gap:.75rem;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;min-width:0}.um-toolbar .search-bar{margin-bottom:0;flex:1;min-width:0}.um-toolbar .search-bar input{max-width:100%}.um-btn-primary{padding:.625rem 1.25rem;background:#c9a84c;color:#000;border:none;cursor:pointer;font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.um-btn-primary:hover{background:#d4b05a;transform:translateY(-1px)}.um-btn-secondary{padding:.625rem 1rem;background:#f3f4f6;color:#374151;border:none;border-radius:8px;cursor:pointer;font-size:.8125rem;font-weight:500;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.um-btn-secondary:hover{background:#e5e7eb}.um-feedback{padding:.75rem 1rem;font-size:.875rem;margin-bottom:1rem;border-radius:4px}.um-feedback.success{background:#d1fae5;color:#065f46}.um-feedback.error{background:#fee2e2;color:#991b1b}.um-table-container{overflow-x:auto;width:100%;-webkit-overflow-scrolling:touch}.um-table{min-width:700px;width:100%;border-collapse:collapse}.um-table thead{background:#f9fafb;border-bottom:2px solid #e5e7eb}.um-table th{text-align:left;padding:1rem;font-weight:600;color:#374151;font-size:.875rem;white-space:nowrap}.um-table td{padding:.875rem 1rem;border-bottom:1px solid #f3f4f6;color:#1f2937;font-size:.875rem;white-space:nowrap}.um-table tbody tr:hover{background:#f9fafb}.um-table tbody tr:last-child td{border-bottom:none}.um-empty{text-align:center;padding:3rem;color:#6b7280}.um-actions{display:flex;gap:.5rem}.um-edit-btn{padding:.375rem .75rem;background:#f3f4f6;color:#374151;border:none;border-radius:8px;cursor:pointer;font-size:.8125rem;transition:all .2s ease}.um-edit-btn:hover{background:#e5e7eb;transform:scale(1.05)}.um-delete-btn{padding:.375rem .75rem;background:#fee2e2;color:#ef4444;border:none;border-radius:8px;cursor:pointer;font-size:.8125rem;transition:all .2s ease}.um-delete-btn:hover{background:#fecaca;transform:scale(1.05)}.um-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500}.um-badge-admin{background:#fef3c7;color:#92400e}.um-badge-employee{background:#e0e7ff;color:#3730a3}.um-badge-member{background:#d1fae5;color:#065f46}.um-badge-visitor{background:#f3f4f6;color:#374151}.um-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:umFadeIn .15s ease}@keyframes umFadeIn{0%{opacity:0}to{opacity:1}}.um-modal{background:#fff;width:560px;max-width:96vw;max-height:90vh;overflow-y:auto;animation:umSlideUp .18s ease;box-shadow:0 20px 60px #0003;border-radius:4px}@keyframes umSlideUp{0%{transform:translateY(12px);opacity:0}to{transform:none;opacity:1}}.um-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.um-modal-header h3{font-size:1.125rem;font-weight:500;color:#1f2937;margin:0}.um-modal-close{background:none;border:none;font-size:1.5rem;color:#9ca3af;cursor:pointer;line-height:1;padding:0 4px;transition:color .15s}.um-modal-close:hover{color:#1f2937}.um-modal-body{padding:1.5rem}.um-modal-footer{padding:1rem 1.5rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:.75rem}.um-cancel-btn{padding:.625rem 1.25rem;background:transparent;color:#6b7280;border:1px solid #e5e7eb;cursor:pointer;font-size:.875rem;border-radius:4px;transition:all .15s}.um-cancel-btn:hover{border-color:#9ca3af;color:#374151}.um-save-btn{padding:.625rem 1.5rem;background:#c9a84c;color:#000;border:none;cursor:pointer;font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;transition:all .2s ease}.um-save-btn:hover{background:#d4b05a}.um-save-btn:disabled{opacity:.5;cursor:not-allowed}.um-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.um-form-group{display:flex;flex-direction:column;gap:.375rem}.um-form-group.full{grid-column:1 / -1}.um-form-group label{font-size:.8125rem;font-weight:500;color:#374151}.um-form-group input,.um-form-group select{padding:.625rem .75rem;border:1px solid #e5e7eb;font-size:.875rem;color:#1f2937;outline:none;transition:border-color .15s;width:100%;background:#fff;border-radius:4px}.um-form-group input:focus,.um-form-group select:focus{border-color:#c9a84c}.um-form-group input:disabled{background:#f9fafb;color:#9ca3af;cursor:not-allowed}.um-manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.um-search-bar{flex:1;min-width:250px}.um-search-input{width:100%;padding:.625rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:all .2s}.um-search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.um-add-btn{padding:.625rem 1.25rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer;font-size:.875rem;transition:background .2s;white-space:nowrap}.um-add-btn:hover{background:#2563eb}.revenue-report{padding:var(--spacing-xl, 1.5rem);background:var(--color-white, #ffffff);border:var(--border-width, 1px) solid var(--color-border, #e5e5e5);border-radius:8px}.report-header{margin-bottom:var(--spacing-xl, 1.5rem);padding-bottom:var(--spacing-lg, 1rem);border-bottom:var(--border-width, 1px) solid var(--color-border, #e5e5e5)}.report-header h2{font-size:1.5rem;font-weight:600;margin-bottom:var(--spacing-xs, .25rem);color:var(--color-black, #1a1a2e)}.report-header p{color:var(--color-gray, #666666);font-size:var(--font-size-sm, .875rem)}.filter-section{background:#f8f9fa;padding:var(--spacing-lg, 1.5rem);margin-bottom:var(--spacing-xl, 1.5rem);border:var(--border-width, 1px) solid var(--color-border, #e5e5e5);border-radius:8px}.filter-row{display:flex;gap:var(--spacing-lg, 1rem);margin-bottom:var(--spacing-lg, 1rem);flex-wrap:wrap;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs, .25rem);flex:1;min-width:150px}.filter-group input,.filter-group select{padding:var(--spacing-sm, .5rem) var(--spacing-md, .75rem);border:var(--border-width, 1px) solid #d1d5db;border-radius:4px;font-size:var(--font-size-sm, .875rem);background:var(--color-white, #ffffff);color:#1f2937;transition:all var(--transition-fast, .2s)}.filter-group input[type=date]{color:#1f2937;background:#fff}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:var(--color-gold, #c5a028);box-shadow:0 0 0 2px #c5a0281a}.filter-group input[type=date]::-webkit-calendar-picker-indicator{background-color:#e5e7eb;padding:4px;border-radius:4px;cursor:pointer;transition:all var(--transition-fast, .2s)}.filter-group input[type=date]::-webkit-calendar-picker-indicator:hover{background-color:var(--color-gold, #c5a028);transform:scale(1.05)}.filter-group input[type=date]::-moz-calendar-picker-indicator{background-color:#e5e7eb;padding:4px;border-radius:4px;cursor:pointer}.filter-group input::placeholder{color:#6b7280;opacity:1}.filter-actions{display:flex;gap:var(--spacing-sm, .5rem);align-items:flex-end}.generate-btn{padding:var(--spacing-sm, .5rem) var(--spacing-lg, 1rem);background:var(--color-gold, #c5a028);border:none;border-radius:4px;font-size:var(--font-size-sm, .875rem);font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all var(--transition-fast, .2s);color:var(--color-black, #000000);height:38px}.reset-btn{padding:var(--spacing-sm, .5rem) var(--spacing-lg, 1rem);background:transparent;border:var(--border-width, 1px) solid #d1d5db;border-radius:4px;color:#6b7280;cursor:pointer;font-size:var(--font-size-sm, .875rem);transition:all var(--transition-fast, .2s);height:38px}.reset-btn:hover{border-color:var(--color-gold, #c5a028);color:var(--color-gold, #c5a028);background:#fffaf0}.summary-section{margin-bottom:var(--spacing-xl, 1.5rem)}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-lg, 1rem);margin-bottom:var(--spacing-lg, 1rem)}.summary-card{background:#f8f9fa;border:var(--border-width, 1px) solid var(--color-border, #e5e5e5);border-radius:8px;padding:var(--spacing-lg, 1.25rem);text-align:center;transition:all var(--transition-fast, .2s)}.summary-card .summary-value,.summary-card .summary-label{color:#1a1a2e!important}.summary-card.primary{background:var(--color-gold, #c5a028);border-color:var(--color-gold, #c5a028)}.summary-card.primary .summary-label{color:#000000b3!important}.summary-card.primary .summary-value{color:#000!important}.summary-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin-bottom:var(--spacing-sm, .5rem)}.summary-value{font-size:1.75rem;font-weight:700;color:#1a1a2e}.breakdown-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-lg, 1rem);margin-bottom:var(--spacing-xl, 1.5rem)}.breakdown-item{background:#f8f9fa;border:var(--border-width, 1px) solid var(--color-border, #e5e5e5);border-radius:8px;padding:var(--spacing-md, .75rem) var(--spacing-lg, 1rem);display:flex;justify-content:space-between;align-items:center;transition:all var(--transition-fast, .2s)}.breakdown-item:hover{transform:translate(4px);border-left-color:var(--color-gold, #c5a028);border-left-width:3px}.breakdown-label{font-size:var(--font-size-sm, .75rem);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.breakdown-value{font-size:var(--font-size-base, .875rem);font-weight:700}.breakdown-item.ticket .breakdown-value{color:#c5a028}.breakdown-item.donation .breakdown-value{color:#10b981}.breakdown-item.cafe .breakdown-value{color:#3b82f6}.breakdown-item.giftshop .breakdown-value{color:#8b5cf6}.insights-section{margin-top:var(--spacing-xl, 1.5rem);margin-bottom:var(--spacing-xl, 1.5rem)}.insights-section h3{font-size:var(--font-size-base, 1rem);font-weight:600;margin-bottom:var(--spacing-lg, 1rem);color:var(--color-black, #1a1a2e);display:flex;align-items:center;gap:var(--spacing-sm, .5rem)}.insights-table-container{background:var(--color-white, #ffffff);border:var(--border-width, 1px) solid var(--color-border, #e5e5e5);border-radius:8px;padding:var(--spacing-lg, 1.25rem);transition:all var(--transition-fast, .2s)}.insights-table-container:hover{box-shadow:0 2px 8px #0000000d}.insights-table-container h4{margin:0 0 var(--spacing-lg, 1rem);font-size:.8rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.insights-table{width:100%;font-size:var(--font-size-sm, .875rem);border-collapse:collapse}.insights-table tbody tr{border-bottom:var(--border-width, 1px) solid var(--color-border, #e5e5e5);transition:background-color var(--transition-fast, .2s)}.insights-table td{padding:var(--spacing-md, .75rem) 0}.insights-table td:last-child{text-align:right;font-weight:600;color:var(--color-black, #1a1a2e)}.rank-badge{display:inline-block;width:24px;height:24px;background:#f3f4f6;border-radius:50%;text-align:center;line-height:24px;font-size:.7rem;font-weight:700;color:#6b7280;margin-right:var(--spacing-sm, .5rem)}.chart-container{background:var(--color-white, #ffffff);border:var(--border-width, 1px) solid var(--color-border, #e5e5e5);border-radius:8px;padding:var(--spacing-lg, 1.25rem);transition:all var(--transition-fast, .2s)}.chart-container h4{margin:0 0 var(--spacing-lg, 1rem);font-size:.8rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.trend-chart{margin-top:var(--spacing-xl, 1.5rem);margin-bottom:var(--spacing-xl, 1.5rem)}.charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg, 1.5rem);margin-top:var(--spacing-xl, 1.5rem);margin-bottom:var(--spacing-xl, 1.5rem)}.data-section{margin-top:var(--spacing-xl, 1.5rem)}.data-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg, 1rem);flex-wrap:wrap;gap:var(--spacing-lg, 1rem)}.data-header h3{font-size:var(--font-size-base, 1rem);font-weight:600;color:var(--color-black, #1a1a2e);text-transform:uppercase;letter-spacing:.05em;margin:0}.export-buttons{display:flex;gap:var(--spacing-sm, .5rem)}.export-btn{padding:var(--spacing-sm, .5rem) var(--spacing-lg, 1rem);background:var(--color-white, #ffffff);border:var(--border-width, 1px) solid var(--color-border, #e5e5e5);border-radius:4px;cursor:pointer;font-size:var(--font-size-sm, .75rem);font-weight:600;transition:all var(--transition-fast, .2s);color:#6b7280}.export-btn:hover{border-color:var(--color-gold, #c5a028);color:var(--color-gold, #c5a028);background:#fffaf0}.table-container{overflow-x:auto;overflow-y:auto;max-height:500px;min-height:400px;border:var(--border-width, 1px) solid var(--color-border, #e5e5e5);border-radius:8px}.data-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm, .875rem)}.data-table thead{background:#f8f9fa;border-bottom:var(--border-width, 1px) solid var(--color-border, #e5e5e5);position:sticky;top:0;z-index:10}.data-table th{text-align:left;padding:var(--spacing-md, .875rem);font-weight:600;color:#1f2937;text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;background:#f8f9fa}.data-table td{padding:var(--spacing-md, .75rem);border-bottom:var(--border-width, 1px) solid #f3f4f6;color:#374151}.data-table tbody tr{transition:background-color var(--transition-fast, .2s)}.amount-cell{font-weight:600;color:var(--color-black, #1a1a2e)}.source-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.source-badge.ticket{background:#fef3c7;color:#92400e}.source-badge.donation{background:#d1fae5;color:#065f46}.source-badge.cafe{background:#e0e7ff;color:#3730a3}.source-badge.gift-shop{background:#f3e8ff;color:#6b21a5}.pagination-container{margin-top:var(--spacing-xl, 1.5rem);padding-top:var(--spacing-lg, 1rem);border-top:var(--border-width, 1px) solid var(--color-border, #e5e5e5)}.pagination-controls{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm, .5rem);flex-wrap:wrap}.pagination-btn{padding:.375rem .75rem;background:var(--color-white, #ffffff);border:var(--border-width, 1px) solid var(--color-border, #e5e5e5);border-radius:4px;cursor:pointer;transition:all var(--transition-fast, .2s);font-size:var(--font-size-sm, .75rem);min-width:36px}.pagination-btn:hover:not(:disabled){border-color:var(--color-gold, #c5a028);color:var(--color-gold, #c5a028);background:#fffaf0;transform:translateY(-1px)}.pagination-btn.active{background:var(--color-gold, #c5a028);border-color:var(--color-gold, #c5a028);color:var(--color-black, #000000)}.page-info{font-size:var(--font-size-sm, .75rem);color:#6b7280;margin:0 var(--spacing-sm, .5rem)}.rows-per-page{display:flex;align-items:center;gap:var(--spacing-sm, .5rem);margin-left:var(--spacing-lg, .5rem);font-size:var(--font-size-sm, .75rem)}.rows-per-page select{padding:.25rem .5rem;border:var(--border-width, 1px) solid var(--color-border, #e5e5e5);border-radius:4px;background:var(--color-white, #ffffff);font-size:var(--font-size-sm, .75rem);cursor:pointer}.rows-per-page select:focus{outline:none;border-color:var(--color-gold, #c5a028)}.loading,.no-results{text-align:center;padding:var(--spacing-2xl, 2rem);color:#9ca3af;font-size:var(--font-size-sm, .875rem)}.loading{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm, .5rem)}.loading:before{content:"";width:20px;height:20px;border:2px solid var(--color-border, #e5e5e5);border-top-color:var(--color-gold, #c5a028);border-radius:50%;animation:spin .8s linear infinite}@media(max-width:1024px){.summary-grid,.breakdown-grid{grid-template-columns:repeat(2,1fr)}.charts-grid{grid-template-columns:1fr;gap:var(--spacing-lg, 1rem)}}@media(max-width:768px){.revenue-report,.filter-section{padding:var(--spacing-lg, 1rem)}.summary-grid,.breakdown-grid{grid-template-columns:1fr;gap:var(--spacing-md, .75rem)}.filter-group{min-width:100%}.filter-row{flex-direction:column;gap:var(--spacing-md, .75rem)}.filter-actions{width:100%;flex-direction:column}.generate-btn,.reset-btn{width:100%;margin-left:0}.data-header{flex-direction:column;align-items:stretch}.export-buttons{width:100%;flex-direction:column}.export-btn{width:100%}.pagination-controls{gap:var(--spacing-xs, .25rem)}.pagination-btn{padding:.25rem .5rem;font-size:.7rem;min-width:32px}.rows-per-page{margin-left:0;width:100%;justify-content:center;margin-top:var(--spacing-sm, .5rem)}.table-container{max-height:350px}.summary-value{font-size:1.5rem}.insights-table td{padding:var(--spacing-sm, .5rem) 0}}@media(max-width:480px){.summary-grid,.breakdown-grid{gap:var(--spacing-sm, .5rem)}.breakdown-item{padding:var(--spacing-sm, .5rem) var(--spacing-md, .75rem)}.data-table th,.data-table td{padding:var(--spacing-sm, .5rem);font-size:.75rem}.chart-container,.insights-table-container{padding:var(--spacing-md, .75rem)}}.tier-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600}.tier-high{background:#fee2e2;color:#991b1b}.tier-medium{background:#fef3c7;color:#92400e}.tier-low{background:#d1fae5;color:#065f46}.tier-standard{background:#f3f4f6;color:#374151}.customer-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600}.art-collection-report{padding:1.5rem;background:#fff;border:1px solid #e5e5e5;border-radius:8px}.filter-row{display:flex;gap:1rem;margin-bottom:1rem;flex-wrap:wrap;align-items:flex-end}.filter-group input[type=number]{color:#1f2937}.generate-btn{padding:.5rem 1rem;background:#c5a028;border:none;border-radius:4px;font-size:.875rem;font-weight:600;cursor:pointer;color:#000;transition:all .2s ease;height:38px}.reset-btn{padding:.5rem 1rem;background:transparent;border:1px solid #d1d5db;border-radius:4px;color:#6b7280;cursor:pointer;font-size:.875rem;margin-left:.5rem;transition:all .2s ease;height:38px}.summary-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.summary-card{background:#f8f9fa;border:1px solid #e5e5e5;border-radius:8px;padding:1rem;text-align:center;transition:all .2s ease}.risk-card{background:#fef3c7!important;border-color:#f59e0b!important}.risk-card .summary-label{color:#92400e}.risk-card .summary-value{color:#78350f}.restoration-card{background:#fee2e2!important;border-color:#ef4444!important}.restoration-card .summary-label{color:#991b1b}.restoration-card .summary-value{color:#7f1d1d}.insight-subtext{font-size:.7rem;color:#6b7280;margin-top:.5rem}.insights-section{margin-top:1.5rem;margin-bottom:1.5rem}.insights-section h3{font-size:1rem;font-weight:600;margin-bottom:1rem;color:#1a1a2e;display:flex;align-items:center;gap:.5rem}.charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:1.5rem;margin-bottom:1.5rem;min-width:0}.insights-table{width:100%;font-size:.875rem;border-collapse:collapse}.insights-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background-color .2s ease}.insights-table tbody tr:hover{background-color:#f8f9fa}.insights-table tbody tr:last-child{border-bottom:none}.insights-table td{padding:.75rem 0}.insights-table td:first-child{font-weight:500;color:#374151}.insights-table td:last-child{text-align:right;font-weight:600;color:#1a1a2e}.rank-badge{display:inline-block;width:24px;height:24px;background:#f3f4f6;border-radius:50%;text-align:center;line-height:24px;font-size:.7rem;font-weight:700;color:#6b7280;margin-right:.5rem}.rank-badge.top-1{background:#c5a028;color:#000}.rank-badge.top-2{background:#d1d5db;color:#374151}.rank-badge.top-3{background:#fcd34d;color:#78350f}.no-data{height:220px;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:.875rem}.data-table{width:100%;border-collapse:collapse;font-size:.875rem;min-width:800px}.data-table thead{background:#f8f9fa;border-bottom:1px solid #e5e5e5}.data-table th{text-align:left;padding:.875rem;font-weight:600;color:#1f2937;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;background:#f8f9fa}.value-cell{font-weight:600;color:#1a1a2e}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-display{background:#d1fae5;color:#065f46}.badge-storage{background:#fef3c7;color:#92400e}.badge-loan{background:#e0e7ff;color:#3730a3}.badge-restoration{background:#fee2e2;color:#991b1b}.badge-deaccessioned{background:#f3f4f6;color:#374151}.pagination-container{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e5e5;display:flex;justify-content:center}.pagination-controls{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.pagination-controls button{padding:.375rem .75rem;background:#fff;border:1px solid #e5e5e5;border-radius:4px;cursor:pointer;font-size:.75rem;transition:all .2s ease;min-width:36px}.pagination-controls button:hover:not(:disabled){border-color:#c5a028;color:#c5a028;background:#fffaf0;transform:translateY(-1px)}.pagination-controls button:disabled{opacity:.5;cursor:not-allowed}.value-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600}.value-iconic{background:#fef3c7;color:#92400e}.value-priceless{background:#fed7aa;color:#9a3412}.value-major{background:#e0e7ff;color:#3730a3}.value-significant{background:#d1fae5;color:#065f46}.value-standard{background:#f3f4f6;color:#374151}.acquisition-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:1rem}.acquisition-card{display:flex;gap:1rem;background:#f8f9fa;border:1px solid #e5e5e5;border-radius:8px;padding:1rem;transition:all .2s ease}.acquisition-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.acquisition-image{flex-shrink:0;width:100px;height:80px;border-radius:6px;overflow:hidden;background:#f3f4f6;display:flex;align-items:center;justify-content:center}.acquisition-image img{width:100%;height:100%;object-fit:cover}.acquisition-image .no-image{font-size:1.5rem;color:#9ca3af}.acquisition-info{flex:1}.acquisition-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin-bottom:.25rem}.acquisition-title{font-size:.9rem;font-weight:600;color:#1a1a2e;margin-bottom:.25rem}.acquisition-date{font-size:.75rem;color:#6b7280}@media(max-width:1024px){.summary-grid{grid-template-columns:repeat(2,1fr)}.charts-grid{grid-template-columns:1fr;gap:1rem}.table-container{max-height:400px;min-height:300px}.acquisition-grid{grid-template-columns:1fr}}@media(max-width:768px){.art-collection-report,.filter-section{padding:1rem}.summary-grid{grid-template-columns:1fr;gap:.75rem}.filter-group{min-width:100%}.filter-row{flex-direction:column;gap:.75rem}.generate-btn,.reset-btn{width:100%;margin-left:0}.data-header{flex-direction:column;align-items:stretch}.pagination-controls{gap:.25rem}.pagination-controls button{padding:.25rem .5rem;font-size:.7rem;min-width:32px}.summary-value{font-size:1.25rem}.insights-table td{padding:.5rem 0}.chart-container{padding:1rem}.table-container{max-height:350px;min-height:250px}.data-table{font-size:.75rem;min-width:700px}.data-table th,.data-table td{padding:.5rem}.acquisition-card{padding:.75rem}.acquisition-image{width:80px;height:60px}}@media(max-width:480px){.summary-grid{gap:.5rem}.data-table th,.data-table td{padding:.5rem;font-size:.75rem}.status-badge{font-size:.6rem;padding:.2rem .4rem}.rank-badge{width:20px;height:20px;line-height:20px;font-size:.6rem}}.art-collection-report{overflow:visible;max-height:none;height:auto}.membership-report{padding:1.5rem;background:#fff;border:1px solid #e5e5e5;border-radius:8px}.report-header p{color:#666;font-size:.875rem}.filter-group label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#555}.filter-group input,.filter-group select{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem;background:#fff;color:#1f2937;transition:all .2s ease}.filter-group input[type=date]{color:#1f2937}.filter-group input[type=date]::-webkit-calendar-picker-indicator{background-color:#e5e7eb;padding:4px;border-radius:4px;cursor:pointer}.generate-btn{padding:.5rem 1rem;background:#c5a028;border:none;border-radius:4px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;color:#000;height:38px}.reset-btn{padding:.5rem 1rem;background:transparent;border:1px solid #d1d5db;border-radius:4px;color:#6b7280;cursor:pointer;font-size:.875rem;transition:all .2s ease;height:38px}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1rem}.summary-card.primary .summary-label,.summary-card.primary .summary-value{color:#000}.summary-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin-bottom:.5rem}.summary-value{font-size:1.5rem;font-weight:700;color:#1a1a2e}.insight-subtext{font-size:.7rem;color:#6b7280;margin-top:.25rem}.charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:1.5rem;min-width:0}.chart-container{background:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:1.25rem;min-width:0;overflow-x:auto}.chart-container.full-width{grid-column:span 2;margin-bottom:1.5rem}.chart-container h4{margin:0 0 1rem;font-size:.8rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.no-data{height:200px;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:.875rem}.membership-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.badge-bronze{background:#fdf2e9;color:#a04000}.badge-silver{background:#f2f3f4;color:#566573}.badge-gold{background:#fef9e7;color:#9a7d0a}.badge-platinum{background:#eaf4fb;color:#1a5276}.badge-benefactor{background:#f3e8ff;color:#6b21a8}.badge-leadership-circle{background:#fff1f2;color:#9f1239}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.status-active{background:#d1fae5;color:#065f46}.status-expired{background:#fee2e2;color:#991b1b}.pending-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600}.pending-cancel{background:#fee2e2;color:#991b1b}.pending-change{background:#fef3c7;color:#92400e}.pending-none{background:#f3f4f6;color:#6b7280}.transaction-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.transaction-badge.new{background:#d1fae5;color:#065f46}.transaction-badge.renewal{background:#e0e7ff;color:#3730a3}.transaction-badge.upgrade{background:#fef3c7;color:#92400e}.transaction-badge.cancellation{background:#fee2e2;color:#991b1b}.data-section{margin-top:1.5rem;min-width:0;overflow-x:auto}.data-header h3{font-size:1rem;font-weight:600;color:#1a1a2e;margin:0}.table-container{overflow-x:auto;overflow-y:auto;max-height:500px;min-height:400px;border:1px solid #e5e5e5;border-radius:8px}.table-container.small{max-height:400px}.data-table{width:100%;border-collapse:collapse;font-size:.875rem;min-width:1000px}.data-table th{text-align:left;padding:.875rem;font-weight:600;color:#1f2937;text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;background:#f8f9fa;white-space:nowrap}.data-table td{padding:.75rem;border-bottom:1px solid #f3f4f6;color:#374151;white-space:nowrap}.data-table tbody tr.expiring-soon{background:#fef3c7}.data-table tbody tr.expiring-soon:hover{background:#fde68a}.pagination-btn{padding:.375rem .75rem;background:#fff;border:1px solid #e5e5e5;border-radius:4px;cursor:pointer;font-size:.75rem;transition:all .2s ease;min-width:36px}.pagination-btn:hover:not(:disabled){border-color:#c5a028;color:#c5a028;background:#fffaf0}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.page-info{font-size:.75rem;color:#6b7280;margin:0 .5rem}.rows-per-page{display:flex;align-items:center;gap:.5rem;margin-left:1rem;padding-left:1rem;border-left:1px solid #e5e5e5}.rows-per-page select{padding:.25rem .5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.75rem;background:#fff;cursor:pointer}.summary-footer{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e5e5}.footer-stats{display:flex;gap:2rem;flex-wrap:wrap;justify-content:space-between;background:#f8f9fa;padding:1rem;border-radius:8px}.footer-stat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.footer-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280}.footer-value{font-size:1.25rem;font-weight:700;color:#1a1a2e}.footer-value.critical{color:#ef4444}.footer-value.warning{color:#f59e0b}.loading,.no-results{text-align:center;padding:2rem;color:#9ca3af;font-size:.875rem}.loading:before{content:"";display:inline-block;width:20px;height:20px;border:2px solid #e5e5e5;border-top-color:#c5a028;border-radius:50%;animation:spin .8s linear infinite;margin-right:.5rem;vertical-align:middle}.recharts-tooltip-wrapper{background:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:.5rem;box-shadow:0 4px 6px #0000001a}.recharts-default-tooltip{background:#fff!important;border:none!important;border-radius:8px!important;padding:.5rem .75rem!important}.recharts-tooltip-label{font-weight:600;color:#1a1a2e;margin-bottom:.25rem}.recharts-cartesian-axis-line,.recharts-cartesian-axis-tick-line{stroke:#e5e5e5}.recharts-cartesian-axis-tick-value{fill:#6b7280;font-size:.7rem}.recharts-legend-item-text{color:#374151!important;font-size:.7rem}.recharts-bar-rectangle:hover{opacity:.8;cursor:pointer}@media(max-width:1024px){.summary-grid{grid-template-columns:repeat(2,1fr)}.charts-grid{grid-template-columns:1fr}.chart-container.full-width{grid-column:span 1}.footer-stats{gap:1rem}}@media(max-width:768px){.membership-report,.filter-section{padding:1rem}.summary-grid{grid-template-columns:1fr;gap:.75rem}.filter-group{min-width:100%}.filter-row{flex-direction:column}.generate-btn,.reset-btn{width:100%}.data-header{flex-direction:column;align-items:stretch}.pagination-controls{gap:.25rem;flex-wrap:wrap}.pagination-btn{padding:.25rem .5rem;font-size:.7rem;min-width:32px}.rows-per-page{margin-left:0;padding-left:0;border-left:none}.summary-value{font-size:1.25rem}.footer-stats{flex-direction:column;align-items:center;gap:.75rem}.footer-stat{width:100%;text-align:center;padding:.5rem;background:#fff;border-radius:6px}}@media(max-width:480px){.summary-grid{gap:.5rem}.summary-card{padding:.75rem}.data-table th,.data-table td{padding:.5rem;font-size:.75rem}.membership-badge,.transaction-badge,.status-badge,.pending-badge{font-size:.6rem;padding:.2rem .4rem}.chart-container{padding:.75rem}.footer-value{font-size:1rem}}.membership-report{overflow:visible;max-height:none}.visitor-analytics-report{padding:1.5rem;background:#fff;border:1px solid #e5e5e5;border-radius:8px}.report-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e5e5e5}.report-header h2{font-size:1.5rem;font-weight:600;margin-bottom:.25rem;color:#1a1a2e}.report-header p{color:#555;font-size:.875rem}.filter-section{background:#f8f9fa;padding:1.5rem;margin-bottom:1.5rem;border:1px solid #e5e5e5;border-radius:8px}.filter-row{display:flex;gap:1rem;flex-wrap:wrap;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:150px}.filter-group label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#444}.filter-group input,.filter-group select{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem;background:#fff;color:#1a1a2e;transition:all .2s ease}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#c5a028;box-shadow:0 0 0 2px #c5a0281a}.filter-group input[type=date]{color:#1a1a2e}.filter-group input[type=date]::-webkit-calendar-picker-indicator{background-color:#e5e7eb;padding:4px;border-radius:4px;cursor:pointer;transition:all .2s ease}.filter-group input[type=date]::-webkit-calendar-picker-indicator:hover{background-color:#c5a028;transform:scale(1.05)}.filter-group input::placeholder{color:#9ca3af}.generate-btn{padding:.5rem 1rem;background:#c5a028;border:none;border-radius:4px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease;color:#000;height:38px}.generate-btn:hover:not(:disabled){background:#d4af37;transform:translateY(-1px)}.generate-btn:active:not(:disabled){transform:translateY(0)}.generate-btn:disabled{opacity:.6;cursor:not-allowed}.reset-btn{padding:.5rem 1rem;background:transparent;border:1px solid #d1d5db;border-radius:4px;color:#555;cursor:pointer;font-size:.875rem;transition:all .2s ease;height:38px}.reset-btn:hover{border-color:#c5a028;color:#c5a028;background:#fffaf0}.summary-section{margin-bottom:1.5rem}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.summary-card{background:#f8f9fa;border:1px solid #e5e5e5;border-radius:8px;padding:1.25rem;text-align:center;transition:all .2s ease}.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.summary-card.primary{background:#c5a028;border-color:#c5a028}.summary-card .summary-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#4a5568;margin-bottom:.5rem}.summary-card .summary-value{font-size:1.5rem;font-weight:700;color:#1a1a2e}.summary-card.primary .summary-label{color:#000000b3}.summary-card.primary .summary-value{color:#000}.chart-container{background:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:1.25rem;transition:all .2s ease}.chart-container:hover{box-shadow:0 2px 8px #0000000d}.chart-container h4{margin:0 0 1rem;font-size:.8rem;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.05em}.charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:1.5rem}.visitor-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.badge-member{background:#d1fae5;color:#065f46}.badge-nonmember{background:#fef3c7;color:#92400e}.data-section{margin-top:1.5rem}.data-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.data-header h3{font-size:1rem;font-weight:600;color:#1a1a2e;text-transform:uppercase;letter-spacing:.05em;margin:0}.table-container{overflow-x:auto;overflow-y:auto;max-height:500px;border:1px solid #e5e5e5;border-radius:8px}.data-table{width:100%;border-collapse:collapse;font-size:.875rem}.data-table thead{background:#f8f9fa;border-bottom:1px solid #e5e5e5;position:sticky;top:0;z-index:10}.data-table th{text-align:left;padding:.875rem;font-weight:600;color:#1f2937;text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;background:#f8f9fa}.data-table td{padding:.75rem;border-bottom:1px solid #f3f4f6;color:#374151}.data-table tbody tr{transition:background-color .2s ease}.data-table tbody tr:hover{background:#f8f9fa}.title-cell{font-weight:500;color:#1a1a2e}.amount-cell{font-weight:600;color:#1a1a2e}.pagination-container{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e5e5}.pagination-controls{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}.pagination-btn{padding:.375rem .75rem;background:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:500;transition:all .2s ease;min-width:36px;color:#374151}.pagination-btn:hover:not(:disabled){border-color:#c5a028;color:#c5a028;background:#fffaf0;transform:translateY(-1px)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed;color:#9ca3af}.page-info{font-size:.75rem;color:#4a5568;margin:0 .5rem;font-weight:500}.rows-per-page{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#4a5568}.rows-per-page select{padding:.25rem .5rem;border:1px solid #d1d5db;border-radius:4px;background:#fff;font-size:.75rem;cursor:pointer;color:#1a1a2e}.loading,.no-results{text-align:center;padding:2rem;color:#6b7280;font-size:.875rem}.loading{display:flex;align-items:center;justify-content:center;gap:.5rem}.loading:before{content:"";width:20px;height:20px;border:2px solid #e5e5e5;border-top-color:#c5a028;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1024px){.summary-grid{grid-template-columns:repeat(2,1fr)}.charts-grid{grid-template-columns:1fr;gap:1rem}}@media(max-width:768px){.visitor-analytics-report,.filter-section{padding:1rem}.summary-grid{grid-template-columns:1fr;gap:.75rem}.filter-group{min-width:100%}.filter-row{flex-direction:column;gap:.75rem}.generate-btn,.reset-btn{width:100%}.data-header{flex-direction:column;align-items:stretch}.pagination-controls{gap:.25rem}.pagination-btn{padding:.25rem .5rem;font-size:.7rem;min-width:32px}.rows-per-page{width:100%;justify-content:center;margin-top:.5rem}.table-container{max-height:350px}.summary-value{font-size:1.25rem}}@media(max-width:480px){.summary-grid{gap:.5rem}.summary-card{padding:.75rem}.data-table th,.data-table td{padding:.5rem;font-size:.75rem}.visitor-badge{font-size:.6rem;padding:.2rem .4rem}.chart-container{padding:.75rem}}.data-table td .visitor-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;color:#000!important}.badge-member{background:#d1fae5;color:#065f46!important}.badge-nonmember{background:#fef3c7;color:#92400e!important}.data-table td:has(.visitor-badge){color:#1a1a2e!important}.data-table tbody tr td:nth-child(3){color:#1a1a2e!important}.data-table td span:not(.visitor-badge){color:#1a1a2e!important}.data-table tbody tr td:nth-of-type(3){color:#1a1a2e}.data-table tbody tr td:nth-of-type(3) span{color:inherit}.data-table tbody td{color:#1a1a2e}.data-table tbody td .visitor-badge.badge-member{color:#065f46!important}.data-table tbody td .visitor-badge.badge-nonmember{color:#92400e!important}.reports-panel{padding:var(--spacing-xl);background:var(--color-white);min-height:600px}.report-buttons{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);border-bottom:var(--border-width) solid var(--color-border);padding-bottom:var(--spacing-md);flex-wrap:wrap;position:sticky;top:0;background:var(--color-white);z-index:10}.report-buttons button{padding:var(--spacing-sm) var(--spacing-xl);background:transparent;border:none;font-size:var(--font-size-sm);font-family:var(--font-primary);color:var(--color-gray);cursor:pointer;transition:all var(--transition-fast);text-transform:uppercase;letter-spacing:.05em;position:relative}.report-buttons button:hover,.report-buttons button.active{color:var(--color-gold)}.report-buttons button.active:after{content:"";position:absolute;bottom:-13px;left:0;right:0;height:2px;background:var(--color-gold)}.report-display{margin-bottom:var(--spacing-3xl);padding:var(--spacing-xl);background:var(--color-cream);border:var(--border-width) solid var(--color-border);border-radius:4px}.report-display h3{margin-top:0;margin-bottom:var(--spacing-xl);font-size:var(--font-size-xl);font-weight:500;color:var(--color-black);text-align:center;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.stats-grid.two-columns{grid-template-columns:repeat(2,1fr)}.stats-grid.four-columns{grid-template-columns:repeat(4,1fr)}.stat-card{background:var(--color-white);padding:var(--spacing-xl);text-align:center;border:var(--border-width) solid var(--color-border);transition:all var(--transition-fast);border-radius:4px;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-gold) 0%,#b8860b 100%);transform:scaleX(0);transition:transform .3s ease}.stat-card:hover:before{transform:scaleX(1)}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a;border-color:var(--color-gold)}.stat-card.small{padding:var(--spacing-lg)}.stat-card.small .stat-value{font-size:1.5rem}.stat-icon{font-size:2.5rem;margin-bottom:var(--spacing-md)}.stat-value{font-size:2rem;font-weight:600;color:var(--color-black);margin-bottom:var(--spacing-xs)}.stat-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray-light);font-weight:500}.stat-sub{font-size:var(--font-size-xs);color:var(--color-gray-light);margin-top:var(--spacing-sm)}.stats-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);margin-top:var(--spacing-xl)}.stat-group{background:var(--color-white);padding:var(--spacing-lg);border:var(--border-width) solid var(--color-border);border-radius:4px}.stat-group h4{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-sm);font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray);border-bottom:var(--border-width) solid var(--color-border);padding-bottom:var(--spacing-sm)}.status-bars{display:flex;flex-direction:column;gap:var(--spacing-md)}.status-item{display:flex;align-items:center;gap:var(--spacing-md);font-size:var(--font-size-sm)}.status-item span:first-child{width:90px;color:var(--color-gray)}.progress-bar{flex:1;height:10px;background:var(--color-border);overflow:hidden;border-radius:5px}.progress-fill{height:100%;transition:width .5s ease;border-radius:5px}.progress-fill.display{background:linear-gradient(90deg,var(--color-gold) 0%,#d4af37 100%)}.progress-fill.storage{background:linear-gradient(90deg,#6b7280,#9ca3af)}.progress-fill.loan{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.status-count{width:45px;text-align:right;color:var(--color-gray);font-weight:500}.date-range{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.date-card{flex:1;text-align:center;padding:var(--spacing-md);background:var(--color-cream);border:var(--border-width) solid var(--color-border);border-radius:4px}.date-label{display:block;font-size:var(--font-size-xs);color:var(--color-gray-light);margin-bottom:var(--spacing-xs);text-transform:uppercase}.date-value{display:block;font-size:var(--font-size-xl);font-weight:500;color:var(--color-black)}.date-arrow{font-size:1.25rem;color:var(--color-gray-light)}.avg-value{text-align:center;padding-top:var(--spacing-md);border-top:var(--border-width) solid var(--color-border)}.avg-value span{font-size:var(--font-size-sm);color:var(--color-gray);margin-right:var(--spacing-sm)}.avg-value strong{font-size:var(--font-size-lg);color:var(--color-gold)}.artist-table-container,.exhibition-table-container{overflow-x:auto;margin-top:var(--spacing-md)}.artist-stats-table,.exhibition-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.artist-stats-table th,.exhibition-table th{text-align:left;padding:var(--spacing-md);background:var(--color-cream);font-weight:600;color:var(--color-gray);text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.05em;border-bottom:2px solid var(--color-border)}.artist-stats-table td,.exhibition-table td{padding:var(--spacing-md);border-bottom:1px solid var(--color-border);color:var(--color-gray)}.artist-stats-table tr:hover,.exhibition-table tr:hover{background:var(--color-cream)}.top-artist{background:linear-gradient(90deg,rgba(197,160,40,.08) 0%,transparent 100%)}.artist-name{font-weight:600;color:var(--color-black)}.medal{margin-right:var(--spacing-sm);font-size:1.1rem}.type-badge{display:inline-block;padding:.25rem .75rem;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;border-radius:4px;font-weight:500}.type-badge.permanent{background:#d1fae5;color:#065f46}.type-badge.temporary{background:#fef3c7;color:#92400e}.type-badge.traveling{background:#e0e7ff;color:#3730a3}.building-name{font-size:var(--font-size-xs);color:var(--color-gray-light)}.exhibition-title{font-weight:500;color:var(--color-black)}.revenue-grid{margin-bottom:var(--spacing-xl)}.revenue-card{position:relative;overflow:hidden;border-left-width:4px;border-left-style:solid}.revenue-card.cafe{border-left-color:#f59e0b}.revenue-card.gift{border-left-color:#10b981}.revenue-card.ticket{border-left-color:#3b82f6}.total-revenue-card{text-align:center;padding:var(--spacing-xl);background:linear-gradient(135deg,var(--color-gold) 0%,#b8860b 100%);color:var(--color-white);border-radius:4px;margin-top:var(--spacing-xl)}.total-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--spacing-sm);font-weight:500}.total-value{font-size:2.5rem;font-weight:700}.highlight-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-border)}.highlight-item:last-child{border-bottom:none}.highlight-item span:first-child{color:var(--color-gray);font-size:var(--font-size-sm)}.highlight-item strong{color:var(--color-black);font-weight:600}.highlight-item span:last-child{color:var(--color-gray-light);font-size:var(--font-size-xs)}.alert-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0}.alert-item.warning span:first-child{color:#f59e0b}.alert-item.danger span:first-child{color:#ef4444}.alert-item strong{font-weight:600}.current-exhibition{margin-top:var(--spacing-lg);padding:var(--spacing-md);background:linear-gradient(135deg,#c5a0281a,#b8860b0d);border:1px solid var(--color-gold);border-radius:4px;text-align:center}.current-exhibition span{color:var(--color-gray);margin-right:var(--spacing-sm);font-size:var(--font-size-sm)}.current-exhibition strong{color:var(--color-gold);font-size:var(--font-size-md)}.query-results-table{overflow-x:auto;margin-top:var(--spacing-md);border:1px solid var(--color-border);border-radius:4px}.query-results-table table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.query-results-table th{text-align:left;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-cream);font-weight:600;color:var(--color-gray);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--color-border)}.query-results-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);color:var(--color-gray)}.query-results-table tr:last-child td{border-bottom:none}.query-results-table tr:hover{background:var(--color-cream)}.no-results{text-align:center;padding:var(--spacing-3xl);color:var(--color-gray-light);font-style:italic}.queries-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.query-card{margin-bottom:0;padding:var(--spacing-lg);background:var(--color-cream);border:var(--border-width) solid var(--color-border);transition:all var(--transition-fast);border-radius:4px}.query-card:hover{border-color:var(--color-gold);box-shadow:var(--shadow-md)}.query-card h4{margin-top:0;margin-bottom:var(--spacing-md);font-size:var(--font-size-md);font-weight:600;color:var(--color-black);display:flex;align-items:center;gap:var(--spacing-sm)}.query-input{display:flex;gap:var(--spacing-md);align-items:center;flex-wrap:wrap}.query-input input{flex:1;min-width:120px;padding:var(--spacing-sm) var(--spacing-md);border:var(--border-width) solid var(--color-border);font-size:var(--font-size-sm);font-family:var(--font-primary);background:var(--color-white);color:var(--color-black);border-radius:4px}.query-input input:focus{outline:none;border-color:var(--color-gold);box-shadow:0 0 0 2px #c5a0281a}.query-input span{color:var(--color-gray-light);font-size:var(--font-size-sm)}.query-input button{padding:var(--spacing-sm) var(--spacing-xl);background:var(--color-gold);border:none;font-size:var(--font-size-sm);font-family:var(--font-primary);color:var(--color-black);cursor:pointer;transition:all var(--transition-fast);text-transform:uppercase;letter-spacing:.05em;border-radius:4px;font-weight:500}.query-input button:hover{background:var(--color-gold-light);transform:translateY(-1px);box-shadow:0 2px 8px #c5a0284d}.query-results{margin-top:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-white);border:var(--border-width) solid var(--color-border);border-radius:4px}.query-results h4{margin-top:0;margin-bottom:var(--spacing-md);font-size:var(--font-size-sm);font-weight:600;color:var(--color-black)}.loading{text-align:center;padding:var(--spacing-3xl);color:var(--color-gray-light);font-size:var(--font-size-sm)}.loading:after{content:"...";animation:dots 1.5s steps(4,end) infinite}@keyframes dots{0%,20%{content:"."}40%{content:".."}60%,to{content:"..."}}@media(max-width:1024px){.stats-grid.two-columns,.stats-grid.four-columns{grid-template-columns:repeat(2,1fr)}.stats-row{grid-template-columns:1fr;gap:var(--spacing-lg)}}@media(max-width:768px){.reports-panel{padding:var(--spacing-md)}.report-buttons{flex-direction:column;align-items:stretch;gap:var(--spacing-sm);position:static}.report-buttons button{width:100%;text-align:center;padding:var(--spacing-md)}.report-buttons button.active:after{display:none}.stats-grid,.stats-grid.two-columns,.stats-grid.four-columns,.stats-row,.queries-grid{grid-template-columns:1fr}.query-input{flex-direction:column;align-items:stretch}.query-input input,.query-input button{width:100%}.artist-stats-table,.exhibition-table,.query-results-table{font-size:var(--font-size-xs)}.artist-stats-table th,.artist-stats-table td,.exhibition-table th,.exhibition-table td,.query-results-table th,.query-results-table td{padding:var(--spacing-sm)}.total-value{font-size:1.75rem}.date-range{flex-direction:column}.date-arrow{transform:rotate(90deg)}.stat-card{padding:var(--spacing-lg)}.stat-value{font-size:1.5rem}}@media(max-width:480px){.stat-value,.total-value{font-size:1.25rem}.artist-stats-table,.exhibition-table{font-size:.7rem}.report-display,.query-card{padding:var(--spacing-md)}}.filter-bar{display:flex;gap:var(--spacing-md);flex-wrap:wrap;margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:var(--color-white);border:var(--border-width) solid var(--color-border);align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:120px}.filter-btn{padding:var(--spacing-sm) var(--spacing-xl);background:var(--color-gold);border:none;cursor:pointer;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em;transition:all var(--transition-fast)}.filter-btn:hover{background:var(--color-gold-light);transform:translateY(-1px)}.summary-stats{display:flex;gap:var(--spacing-md);flex-wrap:wrap;margin-bottom:var(--spacing-xl)}.stat-badge{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-cream);border:var(--border-width) solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-gray)}.stat-badge.warning{background:#fef3c7;border-color:#f59e0b;color:#92400e}.text-right{text-align:right}.text-center{text-align:center}.status-badge{display:inline-block;padding:.25rem .5rem;font-size:var(--font-size-xs);border-radius:4px;font-weight:500}.status-badge.on-display{background:#d1fae5;color:#065f46}.status-badge.in-storage{background:#fef3c7;color:#92400e}.status-badge.on-loan{background:#e0e7ff;color:#3730a3}.status-badge.under-restoration{background:#fee2e2;color:#991b1b}.pie-chart-container{background:var(--color-white);padding:var(--spacing-lg);border:var(--border-width) solid var(--color-border);margin-bottom:var(--spacing-xl)}.pie-segment{margin-bottom:var(--spacing-md)}.pie-label{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.pie-color{width:16px;height:16px;border-radius:50%}.pie-name{flex:1;font-size:var(--font-size-sm);color:var(--color-gray)}.pie-value{font-size:var(--font-size-sm);font-weight:500;color:var(--color-black)}.pie-bar{height:8px;background:var(--color-border);border-radius:4px;overflow:hidden}.pie-bar-fill{height:100%;border-radius:4px;transition:width .5s ease}.line-chart{display:flex;align-items:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);background:var(--color-white);border:var(--border-width) solid var(--color-border);min-height:250px;overflow-x:auto}.chart-bar-container{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);min-width:50px}.chart-bar{width:40px;background:var(--color-gold);border-radius:4px 4px 0 0;position:relative;transition:height .5s ease;cursor:pointer}.chart-bar:hover{background:var(--color-gold-light)}.chart-value{position:absolute;top:-20px;left:50%;transform:translate(-50%);font-size:var(--font-size-xs);color:var(--color-gray);white-space:nowrap}.chart-label{font-size:var(--font-size-xs);color:var(--color-gray-light);text-align:center}.fill-rate-bar{position:relative;width:100px;height:20px;background:var(--color-border);border-radius:10px;overflow:hidden}.fill-rate-fill{height:100%;background:var(--color-gold);border-radius:10px;transition:width .5s ease}.fill-rate-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:10px;font-weight:500;color:var(--color-black);white-space:nowrap}.report-section{margin-top:var(--spacing-xl)}.report-section h4{margin-bottom:var(--spacing-md);font-size:var(--font-size-md);font-weight:600;color:var(--color-black);border-left:3px solid var(--color-gold);padding-left:var(--spacing-md)}.filters-section{background:var(--color-white);border:var(--border-width) solid var(--color-border);padding:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.filters-header h4{margin:0;font-size:var(--font-size-md);color:var(--color-black)}.reset-btn{padding:var(--spacing-xs) var(--spacing-md);background:transparent;border:var(--border-width) solid var(--color-border);cursor:pointer;font-size:var(--font-size-xs)}.reset-btn:hover{border-color:var(--color-gold);color:var(--color-gold)}.filter-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:150px}.filter-group label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray-light)}.filter-group input,.filter-group select{padding:var(--spacing-sm) var(--spacing-md);border:var(--border-width) solid var(--color-border);font-size:var(--font-size-sm);background:var(--color-white);color:var(--color-black)}.year-range{display:flex;gap:var(--spacing-xs);align-items:center}.year-range input{width:90px}.export-section{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-bottom:var(--spacing-xl)}.export-btn{padding:var(--spacing-sm) var(--spacing-lg);border:none;cursor:pointer;font-size:var(--font-size-sm);transition:all var(--transition-fast)}.export-btn.csv{background:#10b981;color:#fff}.export-btn.json{background:#3b82f6;color:#fff}.export-btn.print{background:#6b7280;color:#fff}.export-btn:hover{transform:translateY(-1px);opacity:.9}.summary-stats{display:flex;gap:var(--spacing-md);flex-wrap:wrap;margin-bottom:var(--spacing-xl);padding:var(--spacing-md);background:var(--color-cream);border:var(--border-width) solid var(--color-border)}.stat-badge{padding:var(--spacing-xs) var(--spacing-md);background:var(--color-white);border:var(--border-width) solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-gray);border-radius:4px}.data-table-container{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.data-table th{text-align:left;padding:var(--spacing-md);background:var(--color-cream);font-weight:600;color:var(--color-gray);text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.05em;border-bottom:2px solid var(--color-border)}.data-table td{padding:var(--spacing-md);border-bottom:1px solid var(--color-border);color:var(--color-gray)}.data-table tr:hover{background:var(--color-cream)}.no-results,.loading{text-align:center;padding:var(--spacing-3xl);color:var(--color-gray-light)}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.filter-group.full-width{grid-column:1 / -1}.range-inputs{display:flex;gap:var(--spacing-xs);align-items:center}.range-inputs input{flex:1;min-width:0}.range-inputs span{color:var(--color-gray-light)}.checkbox-group{display:flex;align-items:center}.checkbox-group label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-weight:400;text-transform:none;letter-spacing:normal;color:var(--color-gray)}.checkbox-group input{width:18px;height:18px;cursor:pointer;accent-color:var(--color-gold)}.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable:hover{background:var(--color-gold-light);color:var(--color-black)}.table-footer{padding:var(--spacing-md);text-align:right;font-size:var(--font-size-xs);color:var(--color-gray-light);border-top:var(--border-width) solid var(--color-border)}.admin-dashboard{display:flex;min-height:100vh;background:var(--color-cream)}.dashboard-toasts-stack{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px;max-width:340px}.dashboard-toast{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden;animation:slideInRight .3s ease}.dashboard-toast.cafe-toast{border-left:3px solid #c5a028}.dashboard-toast.gift-toast{border-left:3px solid #1a5276}.dashboard-toast.exhibitions-toast{border-left:3px solid #7c3aed}.dashboard-toast-content{padding:12px 16px}.dashboard-toast-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.toast-icon{font-size:16px}.toast-title{font-weight:600;font-size:13px;color:#1f2937;flex:1}.toast-close{background:none;border:none;font-size:18px;cursor:pointer;color:#9ca3af;padding:0;line-height:1}.toast-close:hover{color:#6b7280}.dashboard-toast-body p{font-size:12px;color:#6b7280;margin:0 0 8px}.toast-items-list{max-height:100px;overflow-y:auto;margin-bottom:10px}.toast-item{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:12px;border-bottom:1px solid #f3f4f6}.toast-item:last-child{border-bottom:none}.toast-item-name{color:#374151}.toast-item-stock.low{color:#dc2626;font-weight:500}.toast-item-more{font-size:11px;color:#9ca3af;text-align:center;padding-top:4px}.dashboard-toast-footer{display:flex;gap:8px;margin-top:8px}.toast-resolve-btn{flex:1;padding:6px 12px;background:#c5a028;color:#000;border:none;border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s}.toast-resolve-btn:hover{background:#d4af37}.toast-dismiss-btn{padding:6px 12px;background:transparent;border:1px solid #e5e7eb;border-radius:4px;font-size:11px;color:#6b7280;cursor:pointer}.toast-dismiss-btn:hover{border-color:#c5a028;color:#c5a028}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.admin-sidebar{width:280px;background:var(--color-white);border-right:var(--border-width) solid var(--color-border);display:flex;flex-direction:column;position:fixed;height:100vh;left:0;top:0;overflow-y:auto;z-index:100}.sidebar-header{padding:var(--spacing-xl);border-bottom:var(--border-width) solid var(--color-border)}.sidebar-header h2{margin:0;font-size:var(--font-size-lg);font-weight:400}.back-to-site{display:inline-block;margin-top:var(--spacing-md);color:var(--color-gray-light);text-decoration:none;font-size:var(--font-size-xs);transition:color var(--transition-fast)}.back-to-site:hover{color:var(--color-gold)}.admin-profile-mini{display:flex;align-items:center;gap:12px;padding:16px;margin:0 12px 16px;background:#f8f9fa;border-radius:12px;border:1px solid #e5e7eb}.admin-avatar{width:40px;height:40px;background:#c5a028;color:#000;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}.admin-info{flex:1}.admin-name{font-weight:600;font-size:14px;color:#1a1a1a}.admin-role{font-size:11px;color:#6b7280}.admin-actions{display:flex;gap:4px}.admin-profile-btn,.admin-password-btn{background:none;border:none;cursor:pointer;font-size:16px;padding:4px;border-radius:6px;transition:background .2s}.admin-profile-btn:hover,.admin-password-btn:hover{background:#e5e7eb}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md)}.nav-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:transparent;border:none;color:var(--color-gray);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);width:100%;text-align:left;border-radius:8px}.nav-item:hover{background:var(--color-cream);color:var(--color-black)}.nav-item.active{background:var(--color-gold);color:var(--color-black)}.sidebar-footer{padding:var(--spacing-xl);border-top:var(--border-width) solid var(--color-border)}.logout-btn{width:100%;padding:var(--spacing-md);background:transparent;border:var(--border-width) solid var(--color-border);color:var(--color-gray);cursor:pointer;transition:all var(--transition-fast);font-size:var(--font-size-sm);border-radius:8px}.logout-btn:hover{border-color:var(--color-gold);color:var(--color-gold)}.admin-main{flex:1;margin-left:280px;padding:1.5rem;height:100vh;display:flex;flex-direction:column;overflow:hidden}.admin-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-3xl);flex-wrap:wrap;gap:var(--spacing-md);flex-shrink:0}.admin-header h1{margin:0;font-size:var(--font-size-3xl);font-weight:400}.admin-subtitle{margin:var(--spacing-xs) 0 0;color:var(--color-gray-light);font-size:var(--font-size-sm)}.exhibition-filters-bar{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;padding:16px 0 8px;flex-shrink:0}.ex-filter-group{display:flex;flex-direction:column;gap:4px}.ex-filter-group label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#888}.ex-filter-group select,.ex-filter-group input{padding:7px 12px;border:1px solid #ddd;border-radius:6px;font-size:.875rem;background:#fff;min-width:140px}.filter-search-input{min-width:200px!important}.price-range-inputs{display:flex;align-items:center;gap:6px}.price-range-inputs input{width:90px;min-width:auto}.ex-filter-clear{background:transparent;border:1px solid #ccc;color:#666;padding:7px 14px;border-radius:6px;font-size:.8rem;cursor:pointer;align-self:flex-end}.ex-filter-clear:hover{border-color:#c5a028;color:#c5a028}.exhibitions-admin-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-shrink:0}.ex-results-count{font-size:.85rem;color:#888;margin:0}.btn-view-archived{padding:6px 12px;background:transparent;border:1px solid #ddd;border-radius:6px;font-size:.8rem;cursor:pointer}.btn-view-archived:hover{border-color:#c5a028;color:#c5a028}.content-area{background:var(--color-white);border:var(--border-width) solid var(--color-border);border-radius:8px;flex:1;min-height:0;overflow-y:auto;padding:1rem}.content-area>div{height:auto;overflow:visible}.content-area .table-container{max-height:400px;overflow-y:auto}.content-area table{min-width:600px;width:100%}@media(max-width:768px){.admin-sidebar{transform:translate(-100%);transition:transform .3s ease;z-index:1000}.admin-sidebar.open{transform:translate(0)}.admin-main{margin-left:0;padding:var(--spacing-md)}.admin-header h1{font-size:var(--font-size-2xl)}.add-btn{width:100%;text-align:center}.exhibition-filters-bar{flex-direction:column;align-items:stretch}.ex-filter-group select,.ex-filter-group input,.filter-search-input{width:100%;min-width:auto}.price-range-inputs{flex-wrap:wrap}.price-range-inputs input{width:100%}.ex-filter-clear{align-self:stretch}.dashboard-toasts-stack{top:10px;right:10px;left:10px;max-width:none}.content-area .table-container{max-height:300px}}@media(max-width:480px){.admin-profile-mini{margin:0 8px 12px;padding:12px}.exhibitions-admin-toolbar{flex-direction:column;align-items:stretch;gap:8px}.btn-view-archived{width:100%}}.admin-sidebar::-webkit-scrollbar{width:6px}.admin-sidebar::-webkit-scrollbar-track{background:#0000000d}.admin-sidebar::-webkit-scrollbar-thumb{background:#0003;border-radius:3px}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.4);cursor:pointer}.success-toast{position:fixed;bottom:20px;right:20px;background:#c5a028;color:#000;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:500;z-index:10000;display:flex;align-items:center;gap:12px;box-shadow:0 2px 8px #00000026;animation:slideInRight .3s ease}.success-toast-close{background:none;border:none;color:#000;font-size:16px;cursor:pointer;padding:0;line-height:1;opacity:.6}.success-toast-close:hover{opacity:1}@media(max-width:480px){.success-toast{bottom:10px;right:10px;left:10px;text-align:center}}.success-toast,.toast.success{position:fixed!important;inset:auto 20px 20px auto!important;width:auto!important;max-width:320px!important;min-width:200px!important;background:#c5a028!important;color:#000!important;padding:10px 16px!important;border-radius:8px!important;font-size:13px!important;font-weight:500!important;z-index:100000!important;display:flex!important;align-items:center!important;gap:12px!important;box-shadow:0 2px 8px #00000026!important;white-space:nowrap!important}.success-toast span,.toast.success span{white-space:normal!important;line-height:1.4!important}.success-toast button,.toast.success button{background:none!important;border:none!important;color:#000!important;font-size:16px!important;cursor:pointer!important;padding:0!important;margin:0!important;opacity:.6!important}.success-toast button:hover,.toast.success button:hover{opacity:1!important}.admin-main .success-toast,.admin-main .toast.success,.content-area .success-toast,.content-area .toast.success{position:fixed!important;inset:auto 20px 20px auto!important}@media(max-width:480px){.success-toast,.toast.success{bottom:10px!important;right:10px!important;left:10px!important;max-width:none!important;width:auto!important}}.tickets-page{max-width:900px;margin:0 auto;padding:2rem 2rem 4rem}.tickets-hero{padding:3rem 0 2rem;border-bottom:1px solid var(--color-border);margin-bottom:2rem}.tickets-eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--color-gray-light);margin:0 0 .5rem}.tickets-title{font-size:3rem;font-weight:300;letter-spacing:-.03em;margin:0 0 .75rem;color:var(--color-black)}.tickets-subtitle{font-size:1rem;color:var(--color-gray);margin:0}.calendar-section{background:#fff;border:1px solid var(--color-border);padding:2rem;margin-bottom:2rem}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.calendar-header h2{font-size:1.25rem;font-weight:400;color:var(--color-black);margin:0}.calendar-nav-btn{background:transparent;border:1px solid var(--color-border);width:36px;height:36px;cursor:pointer;font-size:1.2rem;color:var(--color-black);transition:all .2s ease;display:flex;align-items:center;justify-content:center;line-height:1}.calendar-nav-btn:hover{border-color:var(--color-gold);color:var(--color-gold)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:.5rem}.weekday{padding:.75rem 0;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray-light)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem}.calendar-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem;border:2px solid var(--color-border);cursor:pointer;font-size:.9rem;transition:all .2s ease;position:relative;background:#fff}.calendar-day:hover:not(.disabled):not(.selected){border-color:var(--color-gold);background:#fef9e7}.calendar-day.selected{background:var(--color-gold);color:#000;border-color:var(--color-gold)}.calendar-day.disabled{background:#f9fafb;color:#d1d5db;cursor:not-allowed;text-decoration:line-through}.calendar-day.monday:not(.disabled):not(.selected){background:#fef2f2;color:#dc2626}.calendar-day.empty{background:transparent;border:1px solid var(--color-border);cursor:default}.calendar-day.empty:hover{border-color:var(--color-border);background:transparent}.closed-label{font-size:.6rem;font-weight:500;color:#dc2626;margin-top:.2rem}.calendar-legend{display:flex;justify-content:center;gap:1.5rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--color-border);flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--color-gray)}.legend-color{width:20px;height:20px;border:1px solid var(--color-border)}.legend-color.available{background:#fff;border-color:var(--color-border)}.legend-color.selected{background:var(--color-gold);border-color:var(--color-gold)}.legend-color.closed{background:#fef2f2;border-color:#dc2626}.legend-color.past{background:#f9fafb;border-color:#e5e7eb}.selected-date-banner{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fef9e7;border:1px solid var(--color-gold);margin-bottom:2rem;flex-wrap:wrap}.selected-date-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray)}.selected-date-value{font-size:1rem;font-weight:500;color:var(--color-black);flex:1}.change-date-btn{padding:.5rem 1rem;background:transparent;border:1px solid var(--color-gold);color:var(--color-gold);cursor:pointer;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;transition:all .2s ease}.change-date-btn:hover{background:var(--color-gold);color:#000}.tickets-selection-section{animation:fadeInUp .4s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.member-discount-banner{padding:.75rem 1rem;background:#fefce8;border:1px solid var(--color-gold);color:var(--color-gold);font-size:.85rem;margin-bottom:1.5rem}.tickets-section-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-gray-light);font-weight:500;margin-bottom:1rem}.ticket-rows{border-top:1px solid var(--color-border);margin-bottom:2rem}.ticket-row{display:flex;align-items:center;padding:1.25rem 0;border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:1rem}.ticket-row-info{flex:2;min-width:120px}.ticket-row-name{font-size:1rem;font-weight:500;color:var(--color-black)}.ticket-row-desc{font-size:.78rem;color:var(--color-gray-light);margin-top:2px}.ticket-row-price{font-size:1rem;font-weight:500;color:var(--color-black);min-width:100px}.original-price{text-decoration:line-through;color:var(--color-gray-light);font-size:.8rem;margin-right:.5rem;font-weight:400}.ticket-counter{display:flex;align-items:center;gap:.5rem}.counter-btn{width:32px;height:32px;border:1px solid var(--color-border);background:transparent;cursor:pointer;font-size:1.1rem;color:var(--color-black);display:flex;align-items:center;justify-content:center;transition:all .2s ease}.counter-btn:hover:not(:disabled){border-color:var(--color-gold);color:var(--color-gold)}.counter-btn:disabled{opacity:.3;cursor:not-allowed}.counter-input{width:60px;height:32px;text-align:center;border:1px solid var(--color-border);font-size:.9rem;padding:0}.counter-input:focus{outline:none;border-color:var(--color-gold)}.counter-input::-webkit-inner-spin-button,.counter-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;display:none}.tickets-summary{background:var(--color-cream);padding:1.5rem;margin-bottom:1.5rem;border:1px solid var(--color-border)}.summary-line{display:flex;justify-content:space-between;font-size:.88rem;color:var(--color-gray);margin-bottom:.5rem}.summary-total{display:flex;justify-content:space-between;font-size:1rem;font-weight:500;color:var(--color-black);padding-top:.75rem;border-top:1px solid var(--color-border);margin-top:.5rem}.tickets-empty-summary{font-size:.85rem;color:var(--color-gray-light);text-align:center;padding:1rem 0}.tickets-purchase-btn{width:100%;padding:1rem;background:var(--color-gold);color:var(--color-black);font-size:.82rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;border:none;cursor:pointer;transition:all .3s ease}.tickets-purchase-btn:hover:not(:disabled){background:var(--color-gold-light);transform:translateY(-2px)}.tickets-purchase-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.tickets-feedback{padding:.75rem 1rem;font-size:.85rem;margin-bottom:1rem}.tickets-feedback.error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}@media(max-width:768px){.tickets-page{padding:1rem 1rem 3rem}.tickets-title{font-size:2rem}.calendar-section{padding:1rem}.calendar-day{font-size:.75rem;padding:.25rem}.closed-label{font-size:.5rem}.calendar-legend{gap:.75rem}.ticket-row{flex-direction:column;align-items:flex-start}.ticket-row-price{text-align:left}.ticket-counter{width:100%;justify-content:space-between}.counter-input{flex:1}}.bulk-message{display:flex;gap:1rem;padding:1rem;background:#fef3c7;border-left:4px solid #f59e0b;border-radius:8px;margin:1rem 0}.bulk-icon{font-size:1.25rem}.bulk-text{flex:1}.bulk-text strong{color:#92400e;display:block;margin-bottom:.25rem}.bulk-text p{color:#6b7280;font-size:.8rem;margin:0}.bulk-text p strong{display:inline;color:#92400e}.ticket-limit-info{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;margin-bottom:1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;font-size:.8rem;color:#6b7280}.ticket-limit-info .remaining{color:#c5a028;font-weight:500}.ticket-limit-info .limit-reached{color:#dc2626;font-weight:500}.thursday-discount-banner{padding:.75rem 1rem;background:#d1fae5;border:1px solid #6ee7b7;color:#065f46;font-size:.85rem;margin-bottom:1.5rem;text-align:center;border-radius:8px}.member-discount-banner--used{background:#fef2f2!important;border-color:#fca5a5!important;color:#991b1b!important}.summary-total{color:var(--color-black, #111827)!important}.summary-total span:last-child{color:var(--color-black, #111827)!important;font-weight:600}.tickets-summary .summary-total{color:var(--color-black, #111827)}.tickets-summary .summary-total span{color:var(--color-black, #111827);font-weight:600}.member-discount-banner strong{font-weight:600;display:block}.donations-page{max-width:800px;margin:0 auto;padding:2rem 2rem 4rem}.donations-hero{padding:3rem 0 2rem;border-bottom:1px solid #e5e7eb;margin-bottom:2rem}.donations-hero-content{text-align:center}.donations-eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#9ca3af;margin:0 0 .5rem}.donations-title{font-size:3rem;font-weight:300;letter-spacing:-.03em;margin:0 0 .75rem;color:#111827}.donations-subtitle{font-size:1rem;color:#6b7280;max-width:500px;margin:0 auto}.donations-form{margin-top:1rem}.donations-section-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#9ca3af;font-weight:500;margin-bottom:1rem}.donations-quick-amounts{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.quick-amount-btn{padding:.7rem 1.5rem;border:1px solid #e5e7eb;background:transparent;font-size:.9rem;font-weight:500;color:#111827;cursor:pointer;transition:all .2s ease;letter-spacing:.02em}.quick-amount-btn:hover{border-color:#c5a028;color:#c5a028}.quick-amount-btn.active{background:#c5a028;border-color:#c5a028;color:#000}.quick-amount-btn.custom{border-style:dashed}.donations-custom-field{margin-bottom:1.5rem}.donations-custom-field label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;display:block;margin-bottom:.4rem}.custom-amount-input{width:100%;padding:.875rem 1rem;border:1px solid #e5e7eb;font-size:1.2rem;font-weight:500;background:#fff;color:#111827;transition:border-color .2s}.custom-amount-input:focus{outline:none;border-color:#c5a028}.donations-tier-preview{padding:1rem 1.25rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem;border-radius:8px}.donations-tier-preview.benefactor{background:#f3e8ff;border-left:4px solid #c084fc}.donations-tier-preview.leadership{background:#fff1f2;border-left:4px solid #fb7185}.tier-icon{font-size:1.25rem}.tier-text{font-size:.85rem;font-weight:500}.donations-tier-preview.benefactor .tier-text{color:#6b21a8}.donations-tier-preview.leadership .tier-text{color:#9f1239}.donations-details-grid{margin-bottom:1.5rem}.donations-field label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;display:block;margin-bottom:.4rem}.donations-field select{width:100%;padding:.75rem 1rem;border:1px solid #e5e7eb;font-size:.9rem;background:#fff;color:#111827;transition:border-color .2s}.donations-field select:focus{outline:none;border-color:#c5a028}.donations-summary{background:#f9fafb;border:1px solid #e5e7eb;padding:1.5rem;margin-bottom:1.5rem}.donations-summary-row{display:flex;justify-content:space-between;font-size:.88rem;color:#6b7280;margin-bottom:.5rem}.donations-summary-total{display:flex;justify-content:space-between;font-size:1.2rem;font-weight:500;color:#111827;padding-top:.75rem;border-top:1px solid #e5e7eb;margin-top:.5rem}.donations-tax-note{font-size:.7rem;color:#9ca3af;margin-top:1rem;text-align:center}.donations-feedback{padding:.75rem 1rem;font-size:.85rem;margin-bottom:1rem}.donations-feedback.error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.donations-feedback.success{background:#fefce8;border:1px solid #c5a028;color:#c5a028}.donations-submit-btn{width:100%;padding:1rem;background:#c5a028;color:#000;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;border:none;cursor:pointer;transition:all .3s ease;margin-bottom:1.5rem}.donations-submit-btn:hover:not(:disabled){background:#d4af37;transform:translateY(-2px)}.donations-submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.donations-footer-note{text-align:center;font-size:.75rem;color:#9ca3af;margin-top:1rem}.donations-footer-note strong{color:#6b7280}@media(max-width:600px){.donations-page{padding:1rem 1rem 3rem}.donations-title{font-size:2rem}.donations-quick-amounts{gap:.5rem}.quick-amount-btn{padding:.5rem 1rem;font-size:.8rem}.donations-summary-total{font-size:1rem}}.visitor-dashboard,.member-dashboard,.employee-dashboard{min-height:100vh;background:#f5f3f0}.dashboard-header{background:linear-gradient(135deg,#1a1a2e,#16213e);padding:2rem}.visitor-dashboard .dashboard-header{background:linear-gradient(135deg,#1a1a2e,#16213e)}.member-dashboard .dashboard-header{background:linear-gradient(135deg,#0a1628,#1a2a4a,#c5a028)}.employee-dashboard .dashboard-header{background:linear-gradient(135deg,#0f1b2d,#1e3a5f 60%,#4a7fa5)}.admin-dashboard .dashboard-header{background:linear-gradient(135deg,#1a1a1a,#2d2d2d 60%,#c5a028)}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.header-text h1{font-size:2rem;font-weight:400;color:#fff;margin:0;letter-spacing:-.02em}.header-text p{color:#ffffffb3;margin:.25rem 0 0;font-size:.9rem}.header-actions{display:flex;gap:.75rem}.header-btn{padding:.5rem 1.25rem;text-decoration:none;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;transition:all .2s ease;border:none;cursor:pointer;font-family:inherit}.home-btn{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.home-btn:hover{background:#fff3}.logout-btn{background:transparent;color:#ffffffb3;border:1px solid rgba(255,255,255,.3)}.logout-btn:hover{color:#fff;border-color:#fff9}.dashboard-tabs{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;gap:.25rem;background:#fff;border-bottom:1px solid #e5e7eb;position:relative;z-index:2;overflow-x:auto}.tab-btn{padding:1rem 1.5rem;background:transparent;border:none;font-size:.85rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;font-family:inherit}.tab-btn:hover{color:#111827}.tab-btn.active{color:#c5a028;border-bottom-color:#c5a028}.dashboard-content{max-width:1200px;margin:0 auto;padding:2rem}.feedback-message{padding:.75rem 1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.85rem}.feedback-message.success{background:#d1fae5;color:#065f46;border-left:3px solid #10b981}.feedback-message.error{background:#fee2e2;color:#991b1b;border-left:3px solid #dc2626}.welcome-card{background:#fff;border:1px solid #e5e7eb;padding:1.5rem;margin-bottom:1.5rem;border-radius:12px}.welcome-card h2{font-size:1.25rem;font-weight:500;color:#111827;margin:0 0 .25rem}.welcome-card p{color:#6b7280;margin:0;font-size:.85rem}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1rem;display:flex;align-items:center;justify-content:center;text-align:center;gap:.75rem;transition:all .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.stat-icon{display:none}.stat-info{display:flex;flex-direction:column;text-align:center}.stat-value{font-size:1.5rem;font-weight:600;color:#111827}.stat-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af}.quick-actions{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.quick-action-btn{flex:1;padding:.75rem;background:#c5a028;color:#000;text-decoration:none;text-align:center;font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.quick-action-btn:hover{background:#d4af37;transform:translateY(-2px)}.quick-action-btn span{display:none}.upcoming-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.25rem}.upcoming-section h3{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin:0 0 1rem}.upcoming-list{display:flex;flex-direction:column;gap:.75rem}.upcoming-item{display:flex;justify-content:space-between;align-items:center;padding-bottom:.5rem;border-bottom:1px solid #f3f4f6}.upcoming-date{font-weight:500;color:#111827}.upcoming-tickets{font-size:.8rem;color:#6b7280}.profile-form,.security-form{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.form-field{display:flex;flex-direction:column;gap:.25rem}.form-field.full-width{grid-column:span 2}.form-field label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;font-weight:500}.form-field input,.form-field select{padding:.625rem .75rem;border:1px solid #e5e7eb;border-radius:6px;font-size:.85rem;transition:all .2s ease;font-family:inherit;outline:none}.form-field input:focus,.form-field select:focus{border-color:#c5a028}.field-error{font-size:.7rem;color:#dc2626;margin-top:.25rem}.form-actions{display:flex;justify-content:flex-end}.save-btn{padding:.625rem 1.5rem;background:#c5a028;color:#000;border:none;border-radius:6px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease;font-family:inherit}.save-btn:hover{background:#d4af37;transform:translateY(-1px)}.save-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.visits-section,.purchases-section,.orders-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.visit-group{margin-bottom:1.5rem}.visit-group h3{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin:0 0 .75rem}.visit-card{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border-radius:8px;margin-bottom:.5rem}.visit-card.upcoming{background:#fef9e7;border-left:3px solid #c5a028}.visit-card.past{background:#f9fafb;border-left:3px solid #e5e7eb}.visit-date{font-weight:500;color:#111827}.visit-details{display:flex;gap:1rem;align-items:center;font-size:.8rem;color:#6b7280}.visit-total{font-weight:500;color:#c5a028}.view-more{background:none;border:none;color:#c5a028;font-size:.8rem;cursor:pointer;margin-top:.5rem;font-family:inherit}.view-more:hover{text-decoration:underline}.purchase-group{margin-bottom:2rem}.purchase-group h3{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid #e5e7eb}.purchase-list{display:flex;flex-direction:column;gap:.5rem}.purchase-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f9fafb;border-radius:8px}.purchase-date{font-size:.8rem;color:#6b7280;min-width:90px}.purchase-info{flex:1;margin:0 1rem}.purchase-type{font-size:.85rem;color:#111827}.purchase-qty{font-size:.75rem;color:#9ca3af;margin-left:.5rem}.purchase-amount{font-weight:600;color:#c5a028;font-size:.85rem}.orders-list{display:flex;flex-direction:column;gap:.75rem}.order-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f9fafb;border-radius:8px;cursor:pointer;transition:background .2s ease}.order-item:hover{background:#f3f4f6}.order-header{display:flex;gap:1rem;align-items:baseline}.order-type{font-weight:600;color:#111827;font-size:.85rem}.order-date{font-size:.75rem;color:#9ca3af}.order-amount{font-weight:600;color:#c5a028;font-size:.85rem}.empty-state{text-align:center;padding:2rem;color:#6b7280}.empty-state.small{padding:1rem}.empty-state p{margin:0 0 .5rem}.empty-action{color:#c5a028;text-decoration:none;font-size:.8rem}.empty-action:hover{text-decoration:underline}.dashboard-loading{display:flex;align-items:center;justify-content:center;min-height:400px;color:#9ca3af}.role-badge{display:inline-block;padding:.25rem .75rem;font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;border-radius:20px}.visitor-badge{background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.3)}.member-badge{background:#c9a84c;color:#0d2b2b}.header-badge{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:.5rem}.dashboard-page{min-height:100vh;font-family:DM Sans,sans-serif;background:#f8f5f0}.dashboard-hero{position:relative;min-height:300px;display:flex;align-items:flex-end;padding:48px;overflow:hidden}.member-hero{background:linear-gradient(135deg,#0d2b2b,#1a5c4a 60%,#c9a84c)}.employee-hero{background:linear-gradient(135deg,#0f1b2d,#1e3a5f 60%,#4a7fa5)}.dashboard-hero-overlay{position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.dashboard-hero-content{position:relative;z-index:1;color:#fff}.dashboard-hero-content h1{font-size:clamp(24px,4vw,42px);font-weight:300;letter-spacing:.02em;margin-bottom:8px;line-height:1.15;color:#fff}.dashboard-hero-content p{font-size:15px;opacity:.8;margin-bottom:28px;max-width:480px;line-height:1.6;color:#fff}.dashboard-role-badge{display:inline-block;padding:4px 12px;border:1px solid rgba(255,255,255,.4);border-radius:20px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px;background:#ffffff1a;color:#fff}.member-badge-hero{border-color:#c9a84c;color:#c9a84c;background:#c9a84c1f}.employee-badge-hero{border-color:#4a7fa5;color:#a8d4f0;background:#4a7fa51f}.dashboard-hero-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.dashboard-back-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 20px;background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:4px;text-decoration:none;font-size:13px;font-weight:500;letter-spacing:.04em;transition:all .2s}.dashboard-back-btn:hover{background:#ffffff40}.dashboard-logout-btn{display:inline-flex;align-items:center;padding:10px 20px;background:transparent;color:#ffffffb3;border:1px solid rgba(255,255,255,.2);border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit}.dashboard-logout-btn:hover{color:#fff;border-color:#ffffff80}.dashboard-body{max-width:960px;margin:0 auto;padding:48px}.emp-manager-badge{display:inline-block;padding:4px 14px;margin-bottom:24px;background:#1e3a5f;color:#a8d4f0;font-size:11px;letter-spacing:.1em;text-transform:uppercase;border:1px solid #4a7fa5}.emp-edit-btn{padding:4px 10px;background:transparent;border:1px solid #c9a84c;color:#c9a84c;cursor:pointer;font-size:12px;font-family:inherit;transition:all .15s}.emp-edit-btn:hover{background:#c9a84c;color:#000}.member-manage-btn{padding:4px 12px;background:#c9a84c;color:#000;border:none;cursor:pointer;font-size:12px;font-weight:500;font-family:inherit;transition:all .15s}.member-manage-btn:hover{background:#b8973d}.membership-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.membership-card{margin-bottom:2rem}.membership-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.membership-badge{display:inline-block;padding:.5rem 1.5rem;border-radius:20px;font-size:1rem;font-weight:600;color:#fff}.cancel-membership-btn{padding:.5rem 1rem;background:transparent;border:1px solid #dc2626;color:#dc2626;cursor:pointer;font-size:.75rem;border-radius:6px;transition:all .2s;font-family:inherit}.cancel-membership-btn:hover{background:#dc2626;color:#fff}.membership-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.membership-stats div{display:flex;flex-direction:column;gap:.25rem}.membership-stats .label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af}.membership-stats .value{font-size:1rem;font-weight:500;color:#111827}.membership-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.renew-btn{padding:.625rem 1.5rem;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;cursor:pointer;background:#c5a028;color:#000;border:none;transition:all .2s;font-family:inherit}.renew-btn:hover{background:#d4af37;transform:translateY(-1px)}.plan-change-btn{padding:.625rem 1.5rem;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:transparent;border:1px solid #c5a028;color:#c5a028;transition:all .2s;font-family:inherit}.plan-change-btn:hover{background:#c5a028;color:#000}.pending-banner{padding:.75rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;font-size:.8rem;color:#1e40af}.pending-banner button{background:none;border:none;color:#1e40af;text-decoration:underline;cursor:pointer;font-family:inherit}.membership-history h3{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin:0 0 1rem}.history-table{border:1px solid #e5e7eb;overflow-x:auto}.history-table table{width:100%;border-collapse:collapse;font-size:.85rem}.history-table th{text-align:left;padding:.75rem;background:#f9fafb;color:#6b7280;font-weight:600;border-bottom:1px solid #e5e7eb}.history-table td{padding:.75rem;border-bottom:1px solid #f3f4f6;color:#374151}.history-table td:last-child{text-align:right}.history-table tfoot td{font-weight:600;background:#f9fafb;border-top:1px solid #e5e7eb}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.order-modal,.ticket-group-modal,.donation-modal{background:#fff;width:100%;max-height:90vh;overflow-y:auto;border-radius:12px;box-shadow:0 24px 60px #0003}.order-modal,.ticket-group-modal{max-width:600px}.donation-modal{max-width:500px}.order-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.ticket-modal-header,.donation-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:12px 12px 0 0}.order-modal-header h2{font-size:1.25rem;font-weight:500;color:#111827;margin:0}.ticket-modal-header h2,.donation-modal-header h2{font-size:1.1rem;font-weight:500;color:#fff;margin:0}.order-modal-close,.ticket-modal-close,.donation-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer}.order-modal-close{color:#9ca3af}.order-modal-close:hover{color:#111827}.ticket-modal-close,.donation-modal-close{color:#ffffffb3}.ticket-modal-close:hover,.donation-modal-close:hover{color:#fff}.order-modal-body,.ticket-modal-body,.donation-modal-body{padding:1.5rem}.order-receipt-header,.donation-receipt-header{text-align:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.order-logo,.donation-logo{font-size:1.5rem;font-weight:500;letter-spacing:.08em;color:#c5a028;margin-bottom:.5rem}.order-title,.donation-title{font-size:1rem;font-weight:500;color:#111827}.order-id,.donation-id{font-size:.75rem;color:#9ca3af;margin-top:.25rem}.order-section{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #f3f4f6}.order-section h3{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin:0 0 .75rem}.order-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.order-info-grid div{display:flex;flex-direction:column;gap:.25rem}.order-info-grid .full-width{grid-column:span 3}.info-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af}.info-value{font-size:.85rem;color:#111827;font-weight:500}.order-items-table{width:100%;border-collapse:collapse;font-size:.85rem}.order-items-table th{text-align:left;padding:.5rem 0;color:#9ca3af;font-weight:500;border-bottom:1px solid #e5e7eb}.order-items-table td{padding:.5rem 0;color:#4b5563;border-bottom:1px solid #f3f4f6}.order-items-table td:last-child,.order-items-table th:last-child{text-align:right}.order-total-label{text-align:right;font-weight:600;color:#111827;padding-top:.75rem}.order-total-amount{font-weight:600;color:#c5a028;font-size:1rem;padding-top:.75rem}.order-footer,.ticket-footer,.donation-footer{text-align:center;padding-top:1rem;border-top:1px solid #e5e7eb;margin-top:1rem}.order-footer p,.ticket-footer p,.donation-footer p{font-size:.8rem;color:#6b7280;margin:.25rem 0}.order-footer-note,.ticket-footer-note{font-size:.7rem;color:#9ca3af}.order-loading,.order-empty{text-align:center;padding:1rem;color:#9ca3af;font-size:.8rem}.purchase-summary{background:#f9fafb;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.summary-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #e5e7eb;font-size:.85rem}.summary-row:last-child{border-bottom:none}.summary-row.highlight{font-weight:600;color:#c5a028}.tickets-list{margin-bottom:1.5rem}.tickets-list h4{font-size:.85rem;font-weight:600;color:#6b7280;margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.05em}.ticket-stub-mini{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#fef9e7;border:1px solid #c5a028;border-radius:8px;margin-bottom:.75rem}.ticket-stub-mini-left{flex:1}.ticket-stub-mini-right{text-align:right;min-width:120px}.ticket-type{font-size:.85rem;font-weight:600;color:#111827}.ticket-price{font-size:.7rem;color:#c5a028;font-weight:500;margin-top:.25rem}.mini-barcode-visual{display:flex;gap:2px;justify-content:flex-end;margin-bottom:4px}.barcode-line{width:2px;background:#111827}.barcode-number{font-size:.6rem;font-family:monospace;color:#6b7280;letter-spacing:1px;text-align:right}.ticket-id{font-size:.65rem;font-family:monospace;color:#9ca3af;margin-top:.25rem;text-align:right}.ticket-visitor{background:#f9fafb;border-radius:8px;padding:1rem;margin-bottom:1rem}.ticket-visitor h4{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin:0 0 .75rem}.ticket-detail-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #e5e7eb}.ticket-detail-row:last-child{border-bottom:none}.detail-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af}.detail-value{font-size:.85rem;color:#111827;font-weight:500}.donation-summary,.donation-donor{background:#f9fafb;border-radius:8px;padding:1rem;margin-bottom:1rem}.donation-donor h4{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;margin:0 0 .75rem}.donation-detail-row{display:flex;justify-content:space-between;padding:.4rem 0}.donation-impact{background:#fef9e7;border-left:3px solid #c5a028;padding:1rem;margin-bottom:1rem;text-align:center}.donation-impact p{font-size:.8rem;color:#6b7280;margin:.25rem 0}.donation-impact-note{font-size:.65rem!important;color:#9ca3af!important}.view-ticket-btn,.view-donation-btn{padding:.25rem .75rem;background:transparent;border:1px solid #c5a028;color:#c5a028;font-size:.7rem;font-weight:500;cursor:pointer;border-radius:4px;transition:all .2s;white-space:nowrap;font-family:inherit}.view-ticket-btn:hover,.view-donation-btn:hover{background:#c5a028;color:#000}.admin-sidebar .sidebar-footer .logout-btn{color:var(--color-gray)!important;border-color:var(--color-border)!important;background:transparent!important}.admin-sidebar .sidebar-footer .logout-btn:hover{border-color:var(--color-gold)!important;color:var(--color-gold)!important}@media(max-width:768px){.dashboard-header{padding:1.5rem}.header-content{flex-direction:column;text-align:center}.dashboard-tabs{padding:0 1rem;overflow-x:auto}.dashboard-content{padding:1rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.form-field.full-width{grid-column:span 1}.quick-actions{flex-direction:column}.purchase-item{flex-wrap:wrap;gap:.5rem}.purchase-info{margin:0;width:100%;order:2}.purchase-date{min-width:auto}.dashboard-hero{padding:32px 24px;min-height:220px}.dashboard-body{padding:32px 20px}.order-info-grid{grid-template-columns:1fr}.order-info-grid .full-width{grid-column:span 1}.membership-stats{grid-template-columns:1fr;gap:.75rem}.membership-header{flex-direction:column;align-items:flex-start}}.ss-tabs{display:flex;gap:4px;border-bottom:1px solid #e5e7eb;margin-bottom:24px;flex-wrap:wrap}.ss-tab{display:flex;align-items:center;gap:6px;padding:10px 18px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;font-size:13px;font-family:DM Sans,sans-serif;color:#6b7280;font-weight:500;transition:all .15s}.ss-tab:hover{color:#111}.ss-tab.active{color:#111;border-bottom-color:#c9a84c;font-weight:600}.ss-feedback{padding:11px 16px;border-radius:6px;font-size:13px;margin-bottom:20px}.ss-feedback.success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.ss-feedback.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.ss-loading{text-align:center;padding:48px;color:#9ca3af;font-size:13px}.ss-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:28px 32px;margin-bottom:20px}.ss-section-title{font-family:Cormorant Garamond,Georgia,serif;font-size:22px;font-weight:400;color:#111;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #f3f4f6}.ss-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.ss-form-group{display:flex;flex-direction:column;gap:5px}.ss-form-group.full{grid-column:1 / -1}.ss-form-group label{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#6b7280;font-weight:500}.ss-form-group input,.ss-form-group select{padding:9px 12px;border:1px solid #e5e7eb;border-radius:4px;font-size:13px;color:#111;font-family:DM Sans,sans-serif;outline:none;transition:border-color .15s;width:100%;background:#fff;appearance:auto}.ss-form-group input:focus,.ss-form-group select:focus{border-color:#c9a84c}.ss-form-group .fu-field-wrap,.ss-form-group .fu-field-wrap input,.ss-form-group .fu-password-wrap input{width:100%}.ss-form-actions{display:flex;justify-content:flex-end}.ss-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 22px;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:4px;font-size:13px;font-weight:500;font-family:DM Sans,sans-serif;cursor:pointer;transition:all .15s}.ss-btn:hover{border-color:#9ca3af}.ss-btn-primary{background:#c9a84c;color:#fff;border-color:#c9a84c}.ss-btn-primary:hover{background:#b8973d;border-color:#b8973d}.ss-btn:disabled{opacity:.5;cursor:not-allowed}.ss-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.ss-stat{background:#f9f9f7;border:1px solid #e5e7eb;border-radius:6px;padding:20px 24px;display:flex;flex-direction:column;gap:6px}.ss-stat-value{font-family:Cormorant Garamond,Georgia,serif;font-size:24px;font-weight:400;color:#111;line-height:1.2}.ss-stat-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af}.ss-membership-badge{display:inline-block;padding:8px 20px;border-radius:24px;font-size:15px;font-weight:600;letter-spacing:.04em}.ss-empty{text-align:center;padding:40px;color:#9ca3af;font-size:13px}.ss-placeholder{text-align:center;padding:48px 32px;border:2px dashed #e5e7eb;border-radius:6px}.ss-placeholder-icon{font-size:40px;margin-bottom:14px;opacity:.6}.ss-placeholder p{color:#6b7280;font-size:13px;max-width:360px;margin:0 auto;line-height:1.7}@media(max-width:600px){.ss-form-grid{grid-template-columns:1fr}.ss-form-group.full{grid-column:1}.ss-card{padding:20px 16px}}.emp-edit-btn{padding:4px 12px;background:#c9a84c;color:#000;border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500}.emp-edit-btn:hover{background:#b8943a}.emp-note{margin-top:16px;padding:8px 12px;background:#fef3c7;border-left:3px solid #c9a84c;font-size:12px;color:#92400e}.emp-manager-badge{display:inline-block;padding:4px 12px;margin-bottom:20px;background:#1e3a5f;color:#a8d4f0;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;border:1px solid #4a7fa5}.member-actions{display:flex;gap:6px;flex-wrap:wrap}.member-renew-btn{padding:4px 10px;background:#2563eb;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:11px}.member-upgrade-btn{padding:4px 10px;background:#16a34a;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:11px}.member-downgrade-btn{padding:4px 10px;background:#ea580c;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:11px}.member-cancel-btn{padding:4px 10px;background:#dc2626;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:11px}.member-renew-btn:hover{background:#1d4ed8}.member-upgrade-btn:hover{background:#15803d}.member-downgrade-btn:hover{background:#c2410c}.member-cancel-btn:hover{background:#b91c1c}.member-manage-btn{padding:4px 12px;background:#c9a84c;color:#000;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s}.member-manage-btn:hover{background:#b8943a;transform:translateY(-1px)}.mp-page{width:100%;background:#faf9f8;color:#1a1a1a;overflow-x:hidden}.mp-hero{position:relative;width:100%;min-height:60vh;display:flex;align-items:center;justify-content:center;text-align:center;background:linear-gradient(#0000008c,#0000008c),url(https://static.mfah.com/images/kinder-building-from-above.4932242836019972711.jpg?width=1680) no-repeat center center / cover;margin-bottom:0}.mp-hero-overlay{position:absolute;inset:0;background:#0000004d}.mp-hero-content{position:relative;z-index:2;text-align:center;padding:3rem 2rem;max-width:800px;margin:0 auto;width:100%}.mp-eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:#c5a028;margin-bottom:.75rem}.mp-title{font-size:3.5rem;font-weight:300;letter-spacing:-.03em;color:#fff;margin-bottom:1rem}.mp-subtitle{font-size:1rem;color:#ffffffd9;margin-bottom:1.5rem;line-height:1.6}.mp-current-badge{display:inline-block;padding:.5rem 1.25rem;border:1px solid #c5a028;background:#c5a02826;color:#c5a028;font-size:.8125rem;margin-bottom:1.5rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mp-hero-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.mp-btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 2rem;font-size:.75rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:all .2s ease;text-decoration:none;border:1px solid transparent}.mp-btn-primary{background:#c5a028;color:#000}.mp-btn-primary:hover{background:#d4af37;transform:translateY(-1px)}.mp-btn-outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4)}.mp-btn-outline:hover{border-color:#c5a028;color:#c5a028;background:#0000004d}.mp-section{width:100%;padding:4rem 2rem;border-bottom:1px solid #e5e7eb}.mp-section-donation{background:linear-gradient(to bottom,#fff,#faf9f8);width:100%}.mp-section>*,.mp-section-donation>*{max-width:1200px;margin-left:auto;margin-right:auto}.mp-section-header{text-align:center;margin-bottom:3rem}.mp-section-header h2{font-size:1.75rem;font-weight:400;color:#111827;margin-bottom:.5rem;letter-spacing:-.01em}.mp-section-header p{font-size:.875rem;color:#6b7280;letter-spacing:.03em;text-transform:uppercase}.mp-tiers-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;max-width:1200px;margin:0 auto}.mp-tier-card{background:#fff;border:1px solid #e5e7eb;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;transition:all .3s ease;position:relative;overflow:hidden}.mp-tier-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:#c5a028;transform:scaleX(0);transition:transform .3s ease}.mp-tier-card:hover:before{transform:scaleX(1)}.mp-tier-card:hover{transform:translateY(-4px);border-color:#c5a028;box-shadow:0 12px 24px #00000014}.mp-tier-header h3{font-size:1.25rem;font-weight:500;color:var(--tier-color);margin-bottom:.5rem}.mp-tier-price{display:flex;align-items:baseline;gap:.25rem;margin-bottom:.5rem}.mp-price-amount{font-size:1.75rem;font-weight:500;color:#111827}.mp-price-period{font-size:.75rem;color:#9ca3af}.mp-tier-desc{font-size:.8rem;color:#6b7280;line-height:1.5}.mp-perks{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem;flex:1}.mp-perks li{display:flex;gap:.5rem;font-size:.75rem;color:#4b5563;line-height:1.4}.mp-check{color:#c5a028;font-size:.7rem;flex-shrink:0}.mp-tier-btn{width:100%;padding:.625rem;background:#c5a028;color:#000;border:none;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all .2s ease;margin-top:auto}.mp-tier-btn:hover:not(:disabled){background:#d4af37;transform:translateY(-1px)}.mp-tier-btn:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.mp-donation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;max-width:1200px;margin:0 auto}.mp-donation-card{background:#fff;border:1px solid #e5e7eb;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;transition:all .3s ease;position:relative}.mp-donation-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:#c5a028;transform:scaleX(0);transition:transform .3s ease}.mp-donation-card:hover:before{transform:scaleX(1)}.mp-donation-header h3{font-size:1.25rem;font-weight:500;color:var(--tier-color);margin-bottom:.5rem}.mp-donation-threshold{font-size:.8rem;color:#4b5563;margin-bottom:.5rem;padding:.5rem;background:#f9fafb;border-left:3px solid var(--tier-color)}.mp-donation-btn{display:block;text-align:center;padding:.625rem;background:transparent;border:1px solid #c5a028;color:#c5a028;text-decoration:none;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;transition:all .2s ease}.mp-donation-btn:hover{background:#c5a028;color:#000}.mp-faq-section{width:100%;padding:4rem 2rem;background:#f5f3f0;border-top:1px solid #e5e7eb}.mp-faq-header{text-align:center;margin-bottom:3rem}.mp-faq-header h2{font-size:1.75rem;font-weight:400;color:#111827;margin-bottom:.5rem}.mp-faq-header p{font-size:.875rem;color:#6b7280}.mp-faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;max-width:900px;margin:0 auto}.mp-faq-item{padding:1.25rem;border-left:3px solid #c5a028;background:#fff;transition:all .2s ease}.mp-faq-item h4{font-size:1rem;font-weight:500;color:#111827;margin-bottom:.5rem}.mp-faq-item p{font-size:.875rem;color:#6b7280;line-height:1.6;margin:0}@media(max-width:1024px){.mp-tiers-grid,.mp-donation-grid{grid-template-columns:repeat(2,1fr);padding:0 1rem}}@media(max-width:768px){.mp-title{font-size:2.5rem}.mp-hero-content{padding:3rem 1.5rem}.mp-section{padding:3rem 1rem}.mp-tiers-grid,.mp-donation-grid{grid-template-columns:1fr;gap:1rem}.mp-faq-grid{grid-template-columns:1fr;gap:1rem;padding:0 1rem}.mp-faq-section{padding:3rem 1rem}}@media(max-width:480px){.mp-title{font-size:2rem}.mp-hero-actions{flex-direction:column;align-items:center}.mp-btn{width:100%;max-width:250px}.mp-faq-item{padding:1rem}}.checkout-page{min-height:100vh;background:var(--color-cream);display:flex;align-items:stretch;justify-content:center;padding:0}.checkout-container{display:grid;grid-template-columns:1fr 1.5fr;width:100%;max-width:100%;background:var(--color-white);border:none;min-height:100vh}.checkout-summary{background:#000;color:#fff;padding:4rem 3rem;display:flex;flex-direction:column;gap:1.5rem}.checkout-summary,.checkout-summary p,.checkout-summary span,.checkout-summary div{color:#fff!important}.checkout-summary .checkout-eyebrow{color:var(--color-gold, #c9a84c)!important;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;margin:0}.checkout-summary-title{font-size:1.5rem;font-weight:300;margin:0;letter-spacing:-.02em}.checkout-summary .summary-label{color:#ffffff80!important;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .25rem}.checkout-summary .summary-value{font-size:.95rem;margin:0}.summary-section{border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:1rem}.summary-items{display:flex;flex-direction:column;gap:.75rem;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:1rem}.checkout-summary .summary-item span{color:#ffffffd9!important}.checkout-summary .summary-discount,.checkout-summary .summary-discount span{color:var(--color-gold, #c9a84c)!important}.checkout-summary .summary-total{display:flex;justify-content:space-between;font-size:1rem;font-weight:600;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.15);margin-top:.25rem;color:#fff!important}.checkout-summary .summary-total span{color:#fff!important;font-weight:600}.checkout-form-section{padding:4rem 5rem}.checkout-form-title{font-size:1.5rem;font-weight:300;letter-spacing:-.02em;margin:0 0 .25rem;color:var(--color-black)}.checkout-form-subtitle{font-size:.78rem;color:var(--color-gray-light);margin:0 0 2rem}.checkout-form{display:flex;flex-direction:column;gap:1.25rem}.checkout-field{display:flex;flex-direction:column;gap:.4rem}.checkout-field label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-gray);font-weight:500}.checkout-field input,.checkout-field select{padding:.75rem 1rem;border:1px solid var(--color-border);font-size:.9rem;background:var(--color-white);color:var(--color-black);border-radius:0;transition:border-color .2s;font-family:inherit}.checkout-field input:focus,.checkout-field select:focus{outline:none;border-color:var(--color-gold)}.checkout-field input[readonly]{background:#f6f1e6;color:var(--color-black);opacity:1;-webkit-text-fill-color:var(--color-black);cursor:default}.checkout-field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.checkout-error{font-size:.75rem;color:#dc2626;margin:0}.checkout-submit-error{padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;color:#dc2626;font-size:.85rem}.checkout-submit-btn{width:100%;padding:1rem;background:var(--color-gold);color:var(--color-black);font-size:.82rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;border:none;cursor:pointer;transition:all .3s ease;margin-top:.5rem}.checkout-submit-btn:hover{background:var(--color-gold-light);transform:translateY(-2px)}.checkout-submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.checkout-back-btn{width:100%;padding:.75rem;background:transparent;color:var(--color-gray);font-size:.82rem;border:1px solid var(--color-border);cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.05em}.checkout-back-btn:hover{border-color:var(--color-black);color:var(--color-black)}@media(max-width:700px){.checkout-container{grid-template-columns:1fr;min-height:auto}.checkout-form-section,.checkout-summary{padding:2rem}.checkout-field-row{grid-template-columns:1fr}}
