:root{--yellow-50:#fffef5;--yellow-100:#fefce8;--yellow-200:#fef9c3;--yellow-300:#fef08a;--yellow-400:#facc15;--yellow-500:#eab308;--yellow-600:#ca8a04;--yellow-700:#a16207;--gray-50:#fafafa;--gray-100:#f5f5f5;--gray-200:#e5e5e5;--gray-500:#737373;--gray-600:#525252;--gray-800:#262626;--gray-900:#171717}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background:linear-gradient(135deg,var(--yellow-50) 0,#fff 50%,var(--yellow-100) 100%);min-height:100vh;color:var(--gray-800);line-height:1.6}.container{max-width:720px;margin:0 auto;padding:60px 24px}.header{text-align:center;margin-bottom:56px}.header h1{font-size:2.5rem;font-weight:700;margin-bottom:12px;color:var(--gray-900);letter-spacing:-.02em}.header .subtitle{color:var(--gray-500);font-size:1.1rem;font-weight:400;margin-bottom:24px}.welcome-note{max-width:500px;margin:0 auto;padding:20px 24px;background:var(--yellow-100);border-radius:16px;border:1px solid var(--yellow-200)}.welcome-note p{color:var(--gray-600);font-size:.95rem;line-height:1.7;margin:0}.wishlist{display:grid;grid-gap:14px;gap:14px}.wishlist-item{background:#fff;border:1px solid var(--gray-200);border-radius:16px;padding:16px;cursor:pointer;transition:all .25s ease;display:flex;gap:16px;align-items:stretch;position:relative;overflow:hidden}.item-image{flex-shrink:0;width:100px;height:100px;border-radius:12px;overflow:hidden;background:var(--gray-100)}.item-image img{width:100%;height:100%;object-fit:cover}.image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--yellow-100);color:var(--yellow-500);font-size:2rem}.image-placeholder.loading{background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-200) 50%,var(--gray-100) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.item-content{flex:1 1;display:flex;flex-direction:column;justify-content:space-between;min-width:0}.wishlist-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--yellow-400);transform:scaleY(0);transition:transform .25s ease}.wishlist-item:hover:not(.reserved){border-color:var(--yellow-300);box-shadow:0 8px 24px rgba(250,204,21,.15);transform:translateY(-2px)}.wishlist-item:hover:not(.reserved):before{transform:scaleY(1)}.wishlist-item.reserved{background:var(--gray-50);cursor:default;opacity:.6}.wishlist-item.reserved:before{background:var(--gray-300);transform:scaleY(1)}.item-info{flex:1 1}.item-info h3{font-size:1.1rem;font-weight:600;margin-bottom:4px;color:var(--gray-900)}.item-meta{display:flex;gap:16px;font-size:.85rem;color:var(--gray-500)}.item-meta a{color:var(--yellow-600);text-decoration:none;font-weight:500;transition:color .2s}.item-meta a:hover{color:var(--yellow-700);text-decoration:underline}.item-status{font-size:.75rem;font-weight:600;padding:6px 12px;border-radius:20px;background:var(--gray-100);color:var(--gray-600);text-transform:uppercase;letter-spacing:.03em;align-self:flex-start}.item-status.available{background:var(--yellow-200);color:var(--yellow-700)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:hsla(0,0%,9%,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.modal{background:#fff;border-radius:20px;padding:36px;max-width:400px;width:100%;box-shadow:0 24px 48px rgba(0,0,0,.2);animation:modalIn .25s ease}@keyframes modalIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal h2{font-size:1.35rem;font-weight:700;margin-bottom:8px;color:var(--gray-900)}.modal p{color:var(--gray-500);margin-bottom:28px;font-size:.95rem}.modal input{width:100%;padding:14px 18px;border:2px solid var(--gray-200);border-radius:12px;font-size:1rem;margin-bottom:24px;outline:none;transition:all .2s}.modal input:focus{border-color:var(--yellow-400);box-shadow:0 0 0 4px var(--yellow-100)}.modal-buttons{display:flex;gap:12px}.modal-buttons button{flex:1 1;padding:14px 22px;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel{background:var(--gray-100);border:none;color:var(--gray-600)}.btn-cancel:hover{background:var(--gray-200)}.btn-confirm{background:var(--yellow-400);border:none;color:var(--gray-900);box-shadow:0 4px 12px rgba(250,204,21,.4)}.btn-confirm:hover{background:var(--yellow-500);transform:translateY(-1px);box-shadow:0 6px 16px rgba(250,204,21,.5)}.btn-confirm:disabled{background:var(--gray-200);color:var(--gray-500);cursor:not-allowed;box-shadow:none;transform:none}.loading{color:var(--gray-500)}.error,.loading{text-align:center;padding:80px 20px;font-size:1.1rem}.error{color:#dc2626}@media (max-width:640px){.container{padding:40px 16px}.header{margin-bottom:36px}.header h1{font-size:1.75rem}.header .subtitle{font-size:1rem}.welcome-note{padding:16px 18px}.welcome-note p{font-size:.9rem}.wishlist-item{padding:12px;gap:12px}.item-image{width:80px;height:80px;border-radius:10px}.image-placeholder{font-size:1.5rem}.item-info h3{font-size:1rem}.item-meta{flex-wrap:wrap;gap:6px 12px;font-size:.8rem}.item-status{font-size:.7rem;padding:5px 10px}.modal{padding:24px;border-radius:16px;margin:16px}.modal h2{font-size:1.2rem}.modal-buttons{flex-direction:column}.modal-buttons button{padding:16px 20px}}