@import url("https://fonts.googleapis.com/css2?family=Satisfy&family=Space+Mono:wght@400;700&display=swap");*{margin:0;padding:0;box-sizing:border-box}body,html{background:#141418;color:#e8e4dc;font-family:Space Mono,Courier New,monospace;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.font-cursive{font-family:Satisfy,cursive}.font-mono{font-family:Space Mono,Courier New,monospace}.app-container{max-width:480px;margin:0 auto;min-height:100vh;background:#141418}.header{padding:28px 20px 18px;background:#141418;border-bottom:1px solid #2a2a2e}.header-brand{font-size:38px;font-weight:400;color:#e8e4dc;line-height:1.1}.header-brand,.header-ink{font-family:Satisfy,cursive}.header-ink{color:#d4654a}.header-sub{font-size:11px;color:#6a6a6e;letter-spacing:2px;text-transform:uppercase;margin-top:4px}.filter-bar{padding:10px 16px;background:#1a1a1e;border-bottom:1px solid #2a2a2e;display:flex;gap:6px;overflow-x:auto;position:-webkit-sticky;position:sticky;top:0;z-index:10;-webkit-overflow-scrolling:touch}.filter-bar::-webkit-scrollbar{display:none}.filter-pill{padding:6px 14px;font-size:10px;border-radius:3px;border:1px solid #333338;background:transparent;color:#6a6a6e;cursor:pointer;font-family:Space Mono,monospace;font-weight:700;white-space:nowrap;letter-spacing:1px;transition:all .15s}.filter-pill.active{border-color:#d4654a;background:#2a1a18;color:#d4654a}.day-header{padding:16px 16px 10px;display:flex;align-items:baseline;gap:10px;border-bottom:1px solid #222226}.day-label{font-size:13px;font-weight:700;color:#d4654a;letter-spacing:2px}.day-sub{font-size:11px;color:#555558;letter-spacing:2px}.event-card{background:#1a1a1e;border-bottom:1px solid #242428;transition:background .15s}.card-collapsed{padding:14px 16px;cursor:pointer;display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.card-content{flex:1 1}.badge{font-size:9px;font-weight:700;letter-spacing:1.5px;padding:2px 7px;border-radius:3px;text-transform:uppercase;display:inline-block}.badge-winery{background:#2a1e1a;color:#d4654a}.badge-brewery{background:#1a2a1a;color:#6aaf6a}.badge-cover{background:#2a1e14;color:#d4654a}.badge-verified{background:#1a2a1a;color:#6aaf6a}.venue-name{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;font-weight:800;color:#e8e4dc;text-transform:uppercase;letter-spacing:.5px;line-height:1.25;margin:5px 0}.card-meta{display:flex;flex-wrap:wrap;gap:10px}.meta-music{font-size:12.5px;color:#d4654a}.meta-food{font-size:12.5px;color:#888890}.calendar-btn-wrap{display:flex;flex-direction:column;align-items:center;gap:3px;flex-shrink:0;padding-top:2px}.calendar-btn{width:36px;height:36px;border-radius:3px;border:1px solid #333338;background:transparent;color:#6a6a6e;font-size:14px;cursor:pointer;font-family:Space Mono,monospace;font-weight:900;transition:all .15s;display:flex;align-items:center;justify-content:center;padding:0;line-height:1}.calendar-btn.added{border:2px solid #d4654a;background:#d4654a;color:#141418}.calendar-count{font-size:10px;color:#4a4a4e;font-weight:400}.calendar-count.active{color:#d4654a;font-weight:700}.card-expanded{border-top:1px solid #222226}.card-detail-section{padding:14px 16px}.detail-grid{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:12px}.detail-label{font-size:9px;color:#6a6a6e;letter-spacing:2px;margin-bottom:2px;text-transform:uppercase}.detail-value{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;font-weight:700;color:#e8e4dc;text-transform:uppercase}.detail-sub{font-size:12px;color:#777}.venue-info{background:#161618;padding:12px 14px;margin-bottom:10px;border:1px solid #242428;border-radius:3px}.venue-vibe{font-size:12px;color:#888890;margin-bottom:8px;line-height:1.5}.venue-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.venue-tag{font-size:9px;color:#777;border:1px solid #2e2e32;padding:2px 7px;border-radius:3px}.venue-address{font-size:11px;color:#6a6a6e;margin-bottom:4px}.venue-phone{font-size:10px;color:#555558}.venue-footer{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.venue-link{font-size:11px;color:#d4654a;text-decoration:none;font-weight:700}.claim-link{font-size:9px;color:#6a6a6e;background:none;border:none;cursor:pointer;text-decoration:underline;padding:0;font-family:Space Mono,monospace}.verified-wrap{display:flex;align-items:center;gap:4px}.verified-by{font-size:9px;color:#555558}.claim-form{background:#161618;padding:14px;border:1px solid #242428;margin-bottom:10px;border-radius:3px}.claim-title{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:13px;font-weight:700;color:#e8e4dc;text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px}.claim-hint{font-size:10px;color:#6a6a6e;line-height:1.5;margin-bottom:10px}.form-input{width:100%;padding:8px 10px;font-size:12px;background:#1a1a1e;border:1px solid #333338;color:#bbb;font-family:Space Mono,monospace;outline:none;margin-bottom:6px;border-radius:3px}.form-input:focus{border-color:#555}.form-actions{display:flex;gap:8px;margin-top:10px}.btn-primary{padding:8px 16px;font-weight:700;background:#d4654a;color:#141418;border:none;letter-spacing:1px;border-radius:3px}.btn-primary,.btn-secondary{font-size:11px;cursor:pointer;font-family:Space Mono,monospace}.btn-secondary{padding:8px 12px;border:1px solid #333338;background:transparent;color:#6a6a6e;border-radius:3px}.soft-prompt{padding:10px 16px;background:#161618;font-size:10px;color:#555558}.soft-prompt a{color:#d4654a;text-decoration:none}.newsletter{background:#1a1a1e;padding:32px 20px;text-align:center;border-top:1px solid #2a2a2e;margin-top:20px}.newsletter-title{font-family:Satisfy,cursive;font-size:26px;font-weight:400;color:#e8e4dc;margin-bottom:4px}.newsletter-sub{font-size:11px;color:#6a6a6e;letter-spacing:1px;margin-bottom:16px}.newsletter-form{display:flex;gap:0;max-width:320px;margin:0 auto}.newsletter-input{flex:1 1;padding:11px 14px;font-size:13px;background:#222226;border:1px solid #3a3a3e;border-right:none;color:#e8e4dc;font-family:Space Mono,monospace;outline:none;border-radius:3px 0 0 3px}.newsletter-submit{padding:11px 20px;font-size:14px;font-weight:700;background:#d4654a;color:#141418;border:none;cursor:pointer;font-family:Space Mono,monospace;letter-spacing:1px;border-radius:0 3px 3px 0}.calendar-dropdown{position:absolute;right:0;top:100%;margin-top:4px;background:#222226;border:1px solid #3a3a3e;border-radius:3px;z-index:20;min-width:180px}.calendar-option{display:block;width:100%;padding:10px 14px;font-size:11px;color:#bbb;background:none;border:none;border-bottom:1px solid #2e2e32;cursor:pointer;font-family:Space Mono,monospace;text-align:left;text-decoration:none;letter-spacing:.5px}.calendar-option:last-child{border-bottom:none}.calendar-option:hover{background:#2a2a2e;color:#e8e4dc}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#d4654a;color:#141418;padding:10px 20px;font-size:12px;font-weight:700;font-family:Space Mono,monospace;z-index:100;letter-spacing:1px;border-radius:3px;animation:fadeInOut 2.5s ease}@keyframes fadeInOut{0%{opacity:0;transform:translateX(-50%) translateY(10px)}15%{opacity:1;transform:translateX(-50%) translateY(0)}85%{opacity:1;transform:translateX(-50%) translateY(0)}to{opacity:0;transform:translateX(-50%) translateY(10px)}}.admin-container{max-width:600px;margin:0 auto;padding:20px;background:#141418;min-height:100vh}.admin-header{border-bottom:1px solid #2a2a2e;padding-bottom:16px;margin-bottom:20px}.admin-title{font-family:Satisfy,cursive;font-size:28px;color:#e8e4dc}.admin-section{margin-bottom:30px}.admin-section-title{font-size:13px;font-weight:700;color:#d4654a;letter-spacing:2px;text-transform:uppercase;margin-bottom:12px;border-bottom:1px solid #242428;padding-bottom:8px}.admin-form{display:flex;flex-direction:column;gap:8px}.admin-input{padding:10px 12px;font-size:13px;background:#1a1a1e;border:1px solid #333338;color:#e8e4dc;font-family:Space Mono,monospace;outline:none;border-radius:3px}.admin-input:focus{border-color:#d4654a}.admin-select{padding:10px 12px;background:#1a1a1e;border:1px solid #333338;color:#e8e4dc;outline:none;border-radius:3px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.admin-btn,.admin-select{font-size:13px;font-family:Space Mono,monospace}.admin-btn{padding:10px 20px;font-weight:700;background:#d4654a;color:#141418;border:none;cursor:pointer;letter-spacing:1px;border-radius:3px;margin-top:8px}.admin-row{display:flex;gap:8px}.admin-row>*{flex:1 1}.admin-label{font-size:10px;color:#6a6a6e;letter-spacing:1px;text-transform:uppercase;margin-bottom:4px}.admin-login{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:12px}.empty-state{padding:40px 20px;text-align:center;color:#555558;font-size:12px;letter-spacing:1px}.success-msg{padding:12px 16px;background:#1a2a1a;color:#6aaf6a;font-size:11px;border:1px solid #243824;margin-bottom:10px;border-radius:3px}.claim-card{background:#1a1a1e;border:1px solid #242428;padding:14px;margin-bottom:8px;border-radius:3px}.claim-card-name{font-size:13px;color:#e8e4dc;font-weight:700;margin-bottom:4px}.claim-card-detail{font-size:11px;color:#777;margin-bottom:2px}.claim-card-actions{display:flex;gap:8px;margin-top:10px}