*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0f0f0f;--bg-card:#1a1a2e;--bg-card-hover:#1f1f3a;--bg-input:#16213e;--bg-modal:#000000b3;--accent:#e94560;--accent-hover:#ff6b81;--accent-green:#2ecc71;--accent-green-hover:#27ae60;--text:#eee;--text-muted:#888;--text-reserved:#f39c12;--border:#333;--radius:12px;--shadow:0 4px 20px #0000004d}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:Segoe UI,system-ui,-apple-system,sans-serif}.app{max-width:900px;margin:0 auto;padding:0 20px 40px}.app-header{text-align:center;padding:24px 0}.app-header a{color:var(--accent);letter-spacing:2px;font-size:28px;font-weight:700;text-decoration:none}.events-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.event-card{background:var(--bg-card);border-radius:var(--radius);cursor:pointer;border:1px solid var(--border);padding:20px;transition:border-color .2s;position:relative}.event-card:hover{border-color:var(--accent)}.event-card .emoji{margin-bottom:8px;font-size:36px}.event-card h3{margin-bottom:4px;font-size:18px}.event-card .meta{color:var(--text-muted);gap:12px;margin-top:8px;font-size:13px;display:flex}.event-card .edit-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:18px;transition:color .2s,background .2s;position:absolute;top:12px;right:12px}.event-card .edit-btn:hover{color:var(--text);background:#ffffff1a}.wishes-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.wishes-header h2{font-size:24px}.back-btn{color:var(--text-muted);border:1px solid var(--border);border-radius:8px;padding:6px 12px;font-size:14px;text-decoration:none;transition:color .2s}.back-btn:hover{color:var(--text)}.wish-list{flex-direction:column;gap:12px;display:flex}.wish-item{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);align-items:center;gap:16px;padding:16px 20px;transition:background .2s;display:flex}.wish-item:hover{background:var(--bg-card-hover)}.wish-thumb{object-fit:cover;border:1px solid var(--border);border-radius:8px;flex-shrink:0;width:80px;height:80px}.wish-item.reserved{opacity:.65}.wish-info{flex:1;min-width:0}.wish-info h4{margin-bottom:4px;font-size:16px}.wish-info .wish-link{color:var(--accent);word-break:break-all;font-size:13px;text-decoration:none}.wish-info .wish-link:hover{text-decoration:underline}.wish-info .reserved-label{color:var(--text-reserved);margin-top:4px;font-size:13px}.wish-actions{flex-shrink:0;gap:8px;display:flex}.btn{cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-size:14px;font-weight:500;transition:background .2s,transform .1s}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-green{background:var(--accent-green);color:#fff}.btn-green:hover{background:var(--accent-green-hover)}.btn-outline{border:1px solid var(--border);color:var(--text);background:0 0}.btn-outline:hover{background:#ffffff0d}.btn-danger{color:#e74c3c;background:0 0;border:1px solid #e74c3c}.btn-danger:hover{background:#e74c3c26}.btn-sm{padding:6px 12px;font-size:13px}.add-btn{width:100%;margin-top:8px;padding:14px;font-size:16px}.modal-overlay{background:var(--bg-modal);z-index:100;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--bg-card);border-radius:var(--radius);width:100%;max-width:440px;box-shadow:var(--shadow);padding:28px}.modal h3{margin-bottom:20px;font-size:20px}.form-group{margin-bottom:16px}.form-group label{color:var(--text-muted);margin-bottom:6px;font-size:14px;display:block}.form-group input,.form-group textarea{border:1px solid var(--border);background:var(--bg-input);width:100%;color:var(--text);border-radius:8px;padding:10px 14px;font-family:inherit;font-size:15px}.form-group input:focus,.form-group textarea:focus{border-color:var(--accent);outline:none}.form-group textarea{resize:vertical;min-height:60px}.modal-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.empty{text-align:center;color:var(--text-muted);padding:60px 20px}.empty .empty-icon{margin-bottom:12px;font-size:48px}.page-top{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.event-description{color:var(--text-muted);margin-bottom:20px;font-size:14px}@media (width<=480px){.wish-item{flex-direction:column;align-items:flex-start}.wish-actions{width:100%}.wish-actions .btn{flex:1}}
