*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f5f5f5;color:#1a1a1a}.app{max-width:420px;margin:0 auto;min-height:100vh;background:#fff;padding:16px 16px 20px}.header{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px;border-bottom:1px solid #eee;margin-bottom:16px}.header-left{display:flex;align-items:center;gap:10px}.logo{font-size:24px}.header h1{font-size:20px;font-weight:700;color:#f97316}.header-right{display:flex;align-items:center;gap:12px}.user-name{font-size:13px;color:#888;font-weight:500}.close-btn{background:none;border:none;font-size:22px;color:#999;cursor:pointer;padding:0 4px;transition:color .2s}.close-btn:hover{color:#333}.add-section{display:flex;gap:10px;margin-bottom:16px}.add-section input{flex:1;padding:12px 14px;border:2px solid #e5e7eb;border-radius:12px;font-size:15px;outline:none;transition:border-color .3s;background:#fafafa}.add-section input:focus{border-color:#f97316;background:#fff}.add-section input:disabled{opacity:.6}.add-section button{padding:12px 18px;background:#f97316;color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .3s}.add-section button:hover:not(:disabled){background:#ea580c}.add-section button:disabled{background:#ccc;cursor:not-allowed}.wish-item{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#f8f9fa;border-radius:12px;margin-bottom:8px;transition:background .2s;border:1px solid transparent}.wish-item:hover{background:#f0f0f0;border-color:#f97316}.wish-text{font-size:15px;font-weight:500;color:#1a1a1a}.remove-btn{background:none;border:none;color:#ff6b6b;font-size:18px;cursor:pointer;padding:0 4px;transition:transform .2s,color .2s}.remove-btn:hover:not(:disabled){color:#e03131;transform:scale(1.1)}.remove-btn:disabled{opacity:.4;cursor:not-allowed}.empty{text-align:center;padding:48px 0;color:#999}.empty-icon{font-size:48px;margin-bottom:12px}.empty p:first-of-type{font-size:18px;font-weight:600;color:#666}.hint{font-size:13px;margin-top:6px;color:#aaa}.error{background:#fee2e2;color:#dc2626;padding:10px 14px;border-radius:10px;margin-bottom:12px;font-size:14px;border-left:4px solid #dc2626}.loading{text-align:center;color:#999;padding:24px 0;font-size:14px}.footer{margin-top:20px;padding-top:16px;border-top:1px solid #eee;display:flex;justify-content:center}.badge{background:#fef3c7;color:#d97706;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600}
